admin
2019-11-15 2a93320d3adf8c72ea127df59d0bdd043917dd79
Merge remote-tracking branch 'origin/div' into div
17个文件已修改
216 ■■■■ 已修改文件
fanli/src/main/java/com/yeshi/fanli/controller/TestController.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/dao/mybatis/order/CommonOrderMapper.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/entity/bus/user/UserSystemCouponActivate.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/mapping/order/CommonOrderMapper.xml 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/mapping/user/UserMoneyExtraMapper.xml 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/mapping/user/UserSystemCouponActivateMapper.xml 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/money/UserMoneyExtraServiceImpl.java 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/order/CommonOrderServiceImpl.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/redpack/RedPackWinInviteServiceImpl.java 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserSystemCouponServiceImpl.java 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/user/integral/IntegralTaskRecordServiceImpl.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/inter/money/UserMoneyExtraService.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/inter/order/CommonOrderService.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/inter/user/UserSystemCouponService.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/util/Constant.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/util/rocketmq/consumer/coupon/SystemCouponMessageListener.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/util/rocketmq/consumer/redpack/RedPackMessageListener.java 15 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/TestController.java
@@ -42,6 +42,7 @@
import com.yeshi.fanli.dto.jd.JDSearchResult;
import com.yeshi.fanli.entity.bus.activity.ActivityShareResult;
import com.yeshi.fanli.entity.bus.activity.RecommendActivity;
import com.yeshi.fanli.entity.bus.user.UserMoneyExtra;
import com.yeshi.fanli.entity.dynamic.DynamicInfo;
import com.yeshi.fanli.entity.dynamic.GoodsPicture;
import com.yeshi.fanli.entity.dynamic.InviteMaterial;
@@ -60,6 +61,7 @@
import com.yeshi.fanli.service.inter.dynamic.DynamicInfoService;
import com.yeshi.fanli.service.inter.dynamic.InviteMaterialService;
import com.yeshi.fanli.service.inter.goods.TaoBaoGoodsBriefService;
import com.yeshi.fanli.service.inter.money.UserMoneyExtraService;
import com.yeshi.fanli.service.inter.order.config.HongBaoManageService;
import com.yeshi.fanli.service.inter.user.integral.IntegralGetService;
import com.yeshi.fanli.tag.PageEntity;
@@ -126,6 +128,9 @@
    @Resource
    private IntegralGetService integralGetService;
    @Resource
    private UserMoneyExtraService userMoneyExtraService;
    @RequestMapping(value = "testimg")
    public void testImg(HttpServletRequest request, PrintWriter out) {
@@ -641,4 +646,16 @@
        }
    }
    @RequestMapping("taoLiJinExchange")
    public void taoLiJinExchange(PrintWriter out) {
        try {
            for (int i = 1; i <= 100; i ++) {
                userMoneyExtraService.taoLiJinExchange(i, 200);
            }
            JsonUtil.printMode(out, null, JsonUtil.loadTrueResult("操作成功"));
        } catch (Exception e) {
            JsonUtil.printMode(out, null, JsonUtil.loadFalseResult("操作失败"));
            e.printStackTrace();
        }
    }
}
fanli/src/main/java/com/yeshi/fanli/dao/mybatis/order/CommonOrderMapper.java
@@ -315,4 +315,18 @@
    CommonOrderVO firstValidOrderByUid(@Param("uid") Long uid, @Param("typeHB") Integer typeHB,
            @Param("typeDate") Integer typeDate);
    
    /**
     * 获取首笔分享订单;
     * @param uid
     * @return
     */
    CommonOrder getFirstShareOrderByUid(@Param("uid") Long uid);
    /**
     * 统计订单号到账金额
     * @param uid
     * @return
     */
    BigDecimal getTotalRewardMoneyByOrderNoAndSourceType(@Param("orderNo") String orderNo, @Param("sourceType") Integer sourceType);
}
fanli/src/main/java/com/yeshi/fanli/entity/bus/user/UserSystemCouponActivate.java
@@ -30,6 +30,10 @@
    // 激活状态
    @Column(name = "usca_state")
    private Integer state;
    // 订单号
    @Column(name = "usca_ordernos")
    private String ordernos;
    // 创建时间
    @Column(name = "usca_create_time")
@@ -81,4 +85,12 @@
        this.updateTime = updateTime;
    }
    public String getOrdernos() {
        return ordernos;
    }
    public void setOrdernos(String ordernos) {
        this.ordernos = ordernos;
    }
}
fanli/src/main/java/com/yeshi/fanli/mapping/order/CommonOrderMapper.xml
@@ -1031,5 +1031,22 @@
        ORDER BY co.`co_id`
        LIMIT 1
    </select>
  <select id="getFirstShareOrderByUid"  resultMap="BaseResultMap">
    SELECT co.* FROM yeshi_ec_hongbao_order ho
    LEFT JOIN yeshi_ec_hongbao_v2 v2 ON v2.hb_id = ho.`ho_hongbao_id`
    LEFT JOIN yeshi_ec_common_order co ON co.`co_id`=ho.`ho_order_id`
    WHERE v2.`hb_uid` = #{uid} AND v2.`hb_type` = 20
    ORDER BY co.`co_third_create_time`
    LIMIT 1
  </select>
  <select id="getTotalRewardMoneyByOrderNoAndSourceType" resultType="BigDecimal">
    SELECT SUM(hb_money) FROM(SELECT v2.`hb_money` FROM yeshi_ec_hongbao_order ho
        LEFT JOIN yeshi_ec_hongbao_v2 v2 ON v2.hb_id = ho.`ho_hongbao_id`
        LEFT JOIN yeshi_ec_common_order co ON co.`co_id`=ho.`ho_order_id`
        WHERE v2.`hb_type` = 20 AND v2.`hb_state` = 3
              AND co.`co_order_no` = #{orderNo} AND co.`co_source_type`= #{sourceType})A
  </select>
</mapper>
fanli/src/main/java/com/yeshi/fanli/mapping/user/UserMoneyExtraMapper.xml
@@ -43,7 +43,6 @@
  
 <select id="listValid" resultMap="BaseResultMap">
     SELECT d.`um_uid`,d.`um_tlj`,CEIL(d.`um_tlj`/10)AS um_tlj_self  FROM `yeshi_ec_user_money_extra` d
    WHERE d.`um_tlj` > 0
    LIMIT #{start},#{count}
 </select>
 
fanli/src/main/java/com/yeshi/fanli/mapping/user/UserSystemCouponActivateMapper.xml
@@ -6,20 +6,22 @@
    <id column="usca_id" property="id" jdbcType="BIGINT"/>
    <result column="usca_count" property="count" jdbcType="INTEGER"/>
    <result column="usca_state" property="state" jdbcType="INTEGER"/>
    <result column="usca_ordernos" property="ordernos" jdbcType="VARCHAR"/>
    <result column="usca_create_time" property="createTime" jdbcType="TIMESTAMP"/>
    <result column="usca_update_time" property="updateTime" jdbcType="TIMESTAMP"/>
  </resultMap>
  <sql id="Base_Column_List">usca_id,usca_count,usca_state,usca_create_time,usca_update_time</sql>
  <sql id="Base_Column_List">usca_id,usca_count,usca_state,usca_ordernos,usca_create_time,usca_update_time</sql>
  <select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.Long">select
    <include refid="Base_Column_List"/>from yeshi_ec_user_system_coupon_activate where usca_id = #{id,jdbcType=BIGINT}
  </select>
  <delete id="deleteByPrimaryKey" parameterType="java.lang.Long">delete from yeshi_ec_user_system_coupon_activate where usca_id = #{id,jdbcType=BIGINT}</delete>
  <insert id="insert" parameterType="com.yeshi.fanli.entity.bus.user.UserSystemCouponActivate" useGeneratedKeys="true" keyProperty="id">insert into yeshi_ec_user_system_coupon_activate (usca_id,usca_count,usca_state,usca_create_time,usca_update_time) values (#{id,jdbcType=BIGINT},#{count,jdbcType=INTEGER},#{state,jdbcType=INTEGER},#{createTime,jdbcType=TIMESTAMP},#{updateTime,jdbcType=TIMESTAMP})</insert>
  <insert id="insert" parameterType="com.yeshi.fanli.entity.bus.user.UserSystemCouponActivate" useGeneratedKeys="true" keyProperty="id">insert into yeshi_ec_user_system_coupon_activate (usca_id,usca_count,usca_state,usca_ordernos,usca_create_time,usca_update_time) values (#{id,jdbcType=BIGINT},#{count,jdbcType=INTEGER},#{state,jdbcType=INTEGER},#{ordernos,jdbcType=VARCHAR},#{createTime,jdbcType=TIMESTAMP},#{updateTime,jdbcType=TIMESTAMP})</insert>
  <insert id="insertSelective" parameterType="com.yeshi.fanli.entity.bus.user.UserSystemCouponActivate" useGeneratedKeys="true" keyProperty="id">insert into yeshi_ec_user_system_coupon_activate
    <trim prefix="(" suffix=")" suffixOverrides=",">
      <if test="id != null">usca_id,</if>
      <if test="count != null">usca_count,</if>
      <if test="state != null">usca_state,</if>
      <if test="ordernos != null">usca_ordernos,</if>
      <if test="createTime != null">usca_create_time,</if>
      <if test="updateTime != null">usca_update_time,</if>
    </trim>values
@@ -27,20 +29,22 @@
      <if test="id != null">#{id,jdbcType=BIGINT},</if>
      <if test="count != null">#{count,jdbcType=INTEGER},</if>
      <if test="state != null">#{state,jdbcType=INTEGER},</if>
      <if test="ordernos != null">#{ordernos,jdbcType=VARCHAR},</if>
      <if test="createTime != null">#{createTime,jdbcType=TIMESTAMP},</if>
      <if test="updateTime != null">#{updateTime,jdbcType=TIMESTAMP},</if>
    </trim>
  </insert>
  <update id="updateByPrimaryKey" parameterType="com.yeshi.fanli.entity.bus.user.UserSystemCouponActivate">update yeshi_ec_user_system_coupon_activate set usca_count = #{count,jdbcType=INTEGER},usca_state = #{state,jdbcType=INTEGER},usca_create_time = #{createTime,jdbcType=TIMESTAMP},usca_update_time = #{updateTime,jdbcType=TIMESTAMP} where usca_id = #{id,jdbcType=BIGINT}</update>
  <update id="updateByPrimaryKey" parameterType="com.yeshi.fanli.entity.bus.user.UserSystemCouponActivate">update yeshi_ec_user_system_coupon_activate set usca_count = #{count,jdbcType=INTEGER},usca_state = #{state,jdbcType=INTEGER},usca_ordernos = #{ordernos,jdbcType=VARCHAR},usca_create_time = #{createTime,jdbcType=TIMESTAMP},usca_update_time = #{updateTime,jdbcType=TIMESTAMP} where usca_id = #{id,jdbcType=BIGINT}</update>
  <update id="updateByPrimaryKeySelective" parameterType="com.yeshi.fanli.entity.bus.user.UserSystemCouponActivate">update yeshi_ec_user_system_coupon_activate
    <set>
      <if test="count != null">usca_count=#{count,jdbcType=INTEGER},</if>
      <if test="state != null">usca_state=#{state,jdbcType=INTEGER},</if>
      <if test="ordernos != null">usca_ordernos=#{ordernos,jdbcType=VARCHAR},</if>
      <if test="createTime != null">usca_create_time=#{createTime,jdbcType=TIMESTAMP},</if>
      <if test="updateTime != null">usca_update_time=#{updateTime,jdbcType=TIMESTAMP},</if>
    </set> where usca_id = #{id,jdbcType=BIGINT}
  </update>
  
  <select id="selectForUpdate" resultMap="BaseResultMap" >
   SELECT * FROM  yeshi_ec_user_system_coupon_activate 
@@ -52,5 +56,4 @@
      SET usca_count = usca_count + #{count},usca_update_time = NOW() 
      WHERE usca_id = #{id}
  </select>
</mapper>
fanli/src/main/java/com/yeshi/fanli/service/impl/money/UserMoneyExtraServiceImpl.java
@@ -1,20 +1,26 @@
package com.yeshi.fanli.service.impl.money;
import java.math.BigDecimal;
import java.util.List;
import javax.annotation.Resource;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import com.yeshi.fanli.dao.mybatis.user.UserMoneyExtraMapper;
import com.yeshi.fanli.entity.bus.user.UserMoneyExtra;
import com.yeshi.fanli.service.inter.money.UserMoneyExtraService;
import com.yeshi.fanli.service.inter.user.integral.IntegralTaskRecordService;
@Service
public class UserMoneyExtraServiceImpl implements UserMoneyExtraService {
    @Resource
    private UserMoneyExtraMapper userMoneyExtraMapper;
    @Resource
    private IntegralTaskRecordService integralTaskRecordService;
    @Override
    public UserMoneyExtra selectByPrimaryKey(Long uid) {
@@ -31,5 +37,27 @@
    public List<UserMoneyExtra> listValid(int page, int count) {
        return userMoneyExtraMapper.listValid((page-1) * count, count);
    }
    @Override
    @Transactional(rollbackFor = Exception.class)
    public void taoLiJinExchange(int page, int count) {
        List<UserMoneyExtra> listValid = userMoneyExtraMapper.listValid((page-1) * count, count);
        if (listValid == null || listValid.isEmpty())
            return;
        BigDecimal zero = new BigDecimal(0);
        for (UserMoneyExtra moneyExtra: listValid) {
            BigDecimal tlj = moneyExtra.getTlj();
            BigDecimal tljSelf = moneyExtra.getTljSelf();
            if (tlj == null || tlj.compareTo(zero) <= 0 || tljSelf == null || tljSelf.intValue() <= 0)
                continue;
            integralTaskRecordService.taoLiJinExchange(moneyExtra.getUid(), tljSelf.intValue(), tlj);
            moneyExtra.setTlj(zero);
            moneyExtra.setTljSelf(zero);
            userMoneyExtraMapper.updateByPrimaryKeySelective(moneyExtra);
        }
    }
}
fanli/src/main/java/com/yeshi/fanli/service/impl/order/CommonOrderServiceImpl.java
@@ -1596,4 +1596,13 @@
        return commonOrderMapper.firstValidOrderByUid(uid, type, 4);
    }
    
    @Override
    public CommonOrder getFirstShareOrderByUid(Long uid) {
        return commonOrderMapper.getFirstShareOrderByUid(uid);
    }
    @Override
    public BigDecimal getTotalRewardMoneyByOrderNoAndSourceType(String orderNo, Integer sourceType) {
        return commonOrderMapper.getTotalRewardMoneyByOrderNoAndSourceType(orderNo, sourceType);
    }
}
fanli/src/main/java/com/yeshi/fanli/service/impl/redpack/RedPackWinInviteServiceImpl.java
@@ -36,7 +36,6 @@
import com.yeshi.fanli.util.StringUtil;
import com.yeshi.fanli.util.VersionUtil;
import com.yeshi.fanli.util.annotation.RequestSerializableByKeyService;
import com.yeshi.fanli.util.annotation.redpack.RedPackGetVersionLimit;
import com.yeshi.fanli.util.factory.RedPackDetailFactory;
import com.yeshi.fanli.vo.order.CommonOrderVO;
@@ -140,19 +139,23 @@
     */
    @Transactional
    private void firstSharedOrderRewardToBoss(Long uid, Long inviteeUid, Integer source, String orderNo) throws Exception{
        // 同一队员奖励一次
        // 1、同一队员奖励一次
        long totalReward = redPackWinInviteMapper.countByUidAndTeamUidAndType(uid, inviteeUid, RedPackWinInviteTypeEnum.firstSharedOrder.name());
        if (totalReward > 0)
            return;
        
        // 1、判断是否是改用户首个分享订单
        CommonOrderVO order = commonOrderService.firstValidOrderByUidAndType(inviteeUid, 2);
        if (order == null || source != order.getSourceType() || !orderNo.equals(order.getOrderNo()))
        // 2、是否下级的首个分享订单
        CommonOrder commonOrder = commonOrderService.getFirstShareOrderByUid(inviteeUid);
        if (commonOrder == null || !orderNo.equals(commonOrder.getOrderNo()) || source != commonOrder.getSourceType())
            return ;
        // 3、到账奖励金额 是否大于5
        BigDecimal totalRewardMoney = commonOrderService.getTotalRewardMoneyByOrderNoAndSourceType(orderNo, source);
        if (totalRewardMoney == null || totalRewardMoney.compareTo(Constant.RED_PACK_ORDER_REWARD_MIN) < 0)
            return;
        
        // 2、判断是第几个人
        long total = redPackWinInviteMapper.countByUidAndType(uid, RedPackWinInviteTypeEnum.firstSharedOrder.name());
        
        // 计算应增加红包金额
        BigDecimal money = new BigDecimal(redPackConfigService.getValueByKey("first_shared_order"));
@@ -186,7 +189,7 @@
                new Gson().toJson(dto), "请到“我的-红包”中查看");
    }
    
    /**
     * 上级奖励:次月开始产生满足条件的分享订单(分享订单实付款≥10元) 连续15个月 自然月获得(已到账)每月最高2元
     * @param uid
@@ -196,6 +199,7 @@
     */
    @Transactional
    private void firstSharedOrderRewardTheMonthToBoss(Long uid, Long inviteeUid, Integer source, String orderNo) throws Exception{
        // 1、判断是否是上个月首单
        CommonOrderVO order = commonOrderService.firstValidOrderLastMonthByUidAndType(inviteeUid, 2);
        if (order == null || source != order.getSourceType() || !orderNo.equals(order.getOrderNo()) ||
@@ -206,15 +210,15 @@
        if (order.getPayment() == null || order.getPayment().compareTo(Constant.RED_PACK_PAY_MIN) < 0) 
            return;
        
        // 查询首单奖励时间
        CommonOrderVO firstorder = commonOrderService.firstValidOrderByUidAndType(inviteeUid, 2);
        if (firstorder == null || firstorder.getAccountTime() == null)
            return;
        // 2、是否下级的首个分享订单
//        CommonOrder firstorder = commonOrderService.getFirstShareOrderByUid(inviteeUid);
//        if (firstorder == null || (orderNo.equals(firstorder.getOrderNo()) && source == firstorder.getSourceType()));
//            return;
        
        // 第一次到账的次月开始连续15个月 自然月获得(已到账)
        int monthSpace = DateUtil.getMonthSpace( order.getAccountTime(), firstorder.getAccountTime());
        if (monthSpace == 0 || monthSpace > Constant.RED_PACK_REWARD_MONTH)
            return;
//        int monthSpace = DateUtil.getMonthSpace(order.getThirdCreateTime(), firstorder.getThirdCreateTime());
//        if (monthSpace == 0 || monthSpace > Constant.RED_PACK_REWARD_MONTH)
//            return;
        
        
        // 计算随机奖励
fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserSystemCouponServiceImpl.java
@@ -2560,7 +2560,10 @@
    @RequestSerializableByKeyService(key = "#uid")
    @Override
    @Transactional(rollbackFor = Exception.class)
    public void triggerFreeCouponActivate(Long uid) {
    public void triggerFreeCouponActivate(Long uid, String orderNo, Integer source) {
        if (uid == null || source == null || StringUtil.isNullOrEmpty(orderNo))
            return;
        UserSystemCoupon coupon = userSystemCouponMapper.getNeedActivateCouponByType(uid,
                CouponTypeEnum.freeCoupon.name());
        if (coupon == null)
@@ -2568,6 +2571,20 @@
        Long id = coupon.getId();
        UserSystemCouponActivate couponActivate = userSystemCouponActivateService.selectForUpdate(id);
        if (couponActivate == null)
            return;
        // 验证同订单是否存在
        String key = orderNo + "_" + source;
        String ordernos = couponActivate.getOrdernos();
        if (!StringUtil.isNullOrEmpty(ordernos)) {
            String[] array = ordernos.split(",");
            if (array != null)
                for (int i= 0; i < array.length; i ++) {
                    if (array[i].equals(key))
                        return;
                }
        }
        // 激活数量
        boolean result = false;
@@ -2581,10 +2598,17 @@
            state = UserSystemCouponActivate.STATE_END;
        }
        if (StringUtil.isNullOrEmpty(ordernos)) {
            ordernos = key;
        } else {
            ordernos = ordernos + "," + key;
        }
        UserSystemCouponActivate updateActivate = new UserSystemCouponActivate();
        updateActivate.setId(id);
        updateActivate.setState(state);
        updateActivate.setCount(count);
        updateActivate.setOrdernos(ordernos);
        updateActivate.setUpdateTime(new Date());
        userSystemCouponActivateService.updateByPrimaryKeySelective(updateActivate);
fanli/src/main/java/com/yeshi/fanli/service/impl/user/integral/IntegralTaskRecordServiceImpl.java
@@ -518,6 +518,7 @@
     * @param tlj
     */
    @Override
    @Transactional(rollbackFor = Exception.class)
    public void taoLiJinExchange(Long uid, Integer addGoldCoin, BigDecimal tlj) {
        String uniqueKey = "taoLiJinExchange-" + uid.toString();
        IntegralDetail detailRecord = integralDetailService.getDetailByUniqueKey(uniqueKey);
fanli/src/main/java/com/yeshi/fanli/service/inter/money/UserMoneyExtraService.java
@@ -27,4 +27,11 @@
     * @return
     */
    public List<UserMoneyExtra> listValid(int page, int count);
    /**
     * 红包对换金币
     * @param page
     * @param count
     */
    public void taoLiJinExchange(int page, int count);
}
fanli/src/main/java/com/yeshi/fanli/service/inter/order/CommonOrderService.java
@@ -330,4 +330,19 @@
     */
    public CommonOrderVO firstValidOrderLastMonthByUidAndType(Long uid, Integer type);
    /**
     * 首个分享订单
     * @param uid
     * @return
     */
    public CommonOrder getFirstShareOrderByUid(Long uid);
    /**
     * 订单中获得有效奖金
     * @param orderNo
     * @param sourceType
     * @return
     */
    public BigDecimal getTotalRewardMoneyByOrderNoAndSourceType(String orderNo, Integer sourceType);
}
fanli/src/main/java/com/yeshi/fanli/service/inter/user/UserSystemCouponService.java
@@ -330,7 +330,7 @@
     * 激活免单券---订单已到账   触发激活免单券
     * @param uid
     */
    public void triggerFreeCouponActivate(Long uid);
    public void triggerFreeCouponActivate(Long uid, String orderNo, Integer source);
    /**
     * 退回券
fanli/src/main/java/com/yeshi/fanli/util/Constant.java
@@ -125,6 +125,8 @@
    public static final int AUTO_EXTRACT_MIN_SURPLUS = 2;
    
    // 红包奖励-到账奖励不低于5元
    public static final BigDecimal RED_PACK_ORDER_REWARD_MIN = new BigDecimal("5");
    // 红包奖励随机范围
    public static final double RED_PACK_RANDOM_MIN = 0.5;
    public static final double RED_PACK_RANDOM_MAX = 2;
fanli/src/main/java/com/yeshi/fanli/util/rocketmq/consumer/coupon/SystemCouponMessageListener.java
@@ -43,7 +43,8 @@
                        // 首次到账返利
                        
                        // 激活免单券
                        userSystemCouponService.triggerFreeCouponActivate(orderMoneyRecievedMQMsgDTO.getUid());
                        userSystemCouponService.triggerFreeCouponActivate(orderMoneyRecievedMQMsgDTO.getUid(),
                                orderMoneyRecievedMQMsgDTO.getOrderId(), orderMoneyRecievedMQMsgDTO.getSourceType());
                        // 业务代码执行成功后返回
                        return Action.CommitMessage;
fanli/src/main/java/com/yeshi/fanli/util/rocketmq/consumer/redpack/RedPackMessageListener.java
@@ -55,13 +55,14 @@
            if (tag.equalsIgnoreCase(OrderTopicTagEnum.orderFanLiActual.name())) {// 返利到账
                OrderMoneyRecievedMQMsg orderMoneyRecievedMQMsg = new Gson().fromJson(new String(message.getBody()),
                        OrderMoneyRecievedMQMsg.class);
                // 分享订单奖励
                if (orderMoneyRecievedMQMsg.getType() == OrderMoneyRecievedMQMsg.TYPE_SHARE) {
                    try {// 上级分享订单奖励
                        redPackWinInviteService.orderArriveReward(orderMoneyRecievedMQMsg.getUid(),
                                orderMoneyRecievedMQMsg.getSourceType(), orderMoneyRecievedMQMsg.getOrderId());
                    } catch (Exception e) {
                        e.printStackTrace();
                    }
//                    try {
//                        redPackWinInviteService.orderArriveReward(orderMoneyRecievedMQMsg.getUid(),
//                                orderMoneyRecievedMQMsg.getSourceType(), orderMoneyRecievedMQMsg.getOrderId());
//                    } catch (Exception e) {
//                        e.printStackTrace();
//                    }
                }
            } else if (tag.equalsIgnoreCase(OrderTopicTagEnum.orderStatistic.name())) {// 订单统计
                OrderMQMsg orderMQMsg = new Gson().fromJson(new String(message.getBody()), OrderMQMsg.class);
@@ -113,7 +114,7 @@
                    {
                        System.out.println(uid);
                    }
                    redPackWinInviteService.inviteSucceedReward(uid);
//                    redPackWinInviteService.inviteSucceedReward(uid);
                } catch (Exception e) {
                    e.printStackTrace();
                }