yujian
2019-11-13 a2ae9b3d890bc7fcaa34ab65e5cdaf8ccfa07c2b
红包弹框加入设备验证
4个文件已修改
54 ■■■■■ 已修改文件
fanli/src/main/java/com/yeshi/fanli/controller/client/v2/ConfigControllerV2.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/redpack/RedPackWinNewUserServiceImpl.java 28 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/inter/redpack/RedPackWinNewUserService.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/util/factory/goods/GoodsDetailVOFactory.java 22 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/client/v2/ConfigControllerV2.java
@@ -167,7 +167,7 @@
        for (int i = 0; i < listAD.size(); i++) {
            FloatAD floatAD = listAD.get(i);
            FloatADTypeEnum typeEnum = floatAD.getTypeEnum();
            if (typeEnum == FloatADTypeEnum.newUserRedPack && !redPackWinNewUserService.verifyHasReward(uid)) {
            if (typeEnum == FloatADTypeEnum.newUserRedPack && !redPackWinNewUserService.verifyHasReward(uid, acceptData.getDevice())) {
                listAD.remove(i);
                i--;
                continue;
fanli/src/main/java/com/yeshi/fanli/service/impl/redpack/RedPackWinNewUserServiceImpl.java
@@ -11,16 +11,19 @@
import com.yeshi.fanli.dao.mongodb.redpack.RedPackWinNewUserDao;
import com.yeshi.fanli.entity.bus.user.UserInfoExtra;
import com.yeshi.fanli.entity.push.DeviceActive;
import com.yeshi.fanli.entity.redpack.RedPackBalance;
import com.yeshi.fanli.entity.redpack.RedPackWinNewUser;
import com.yeshi.fanli.log.LogHelper;
import com.yeshi.fanli.service.inter.money.msg.UserMoneyMsgNotificationService;
import com.yeshi.fanli.service.inter.push.DeviceActiveService;
import com.yeshi.fanli.service.inter.redpack.RedPackBalanceService;
import com.yeshi.fanli.service.inter.redpack.RedPackConfigService;
import com.yeshi.fanli.service.inter.redpack.RedPackWinNewUserService;
import com.yeshi.fanli.service.inter.user.UserInfoExtraService;
import com.yeshi.fanli.util.Constant;
import com.yeshi.fanli.util.MoneyBigDecimalUtil;
import com.yeshi.fanli.util.StringUtil;
import com.yeshi.fanli.util.annotation.RequestSerializableByKeyService;
import com.yeshi.fanli.util.factory.RedPackDetailFactory;
import com.yeshi.fanli.vo.redpack.RedPackWinDetailVO;
@@ -43,12 +46,29 @@
    @Resource
    private UserMoneyMsgNotificationService userMoneyMsgNotificationService;
    
    @Resource
    private DeviceActiveService deviceActiveService;
    
    @Override
    public boolean verifyHasReward(Long uid) {
    public boolean verifyHasReward(Long uid, String device) {
        try {
            if (uid == null || uid <= 0)
                return true; // 未登录弹出
            if (StringUtil.isNullOrEmpty(device) && (uid == null || uid <= 0))
                return false;
            if (uid == null || uid <= 0) {
                DeviceActive deviceActive = deviceActiveService.getFirstActiveInfo(device);
                if (deviceActive == null)
                    return true; // 新设备弹出
                Date nowTime = new Date();
                Date createTime = deviceActive.getCreateTime();
                int days = DateUtil.daysBetween2(createTime, nowTime);
                if (days >= Constant.RED_PACK_NEW_USER_DAYS) {
                    return false; // 已经超出设置天数
                }
                return true; // 未超过时间
            }
            
            RedPackBalance redPackBalance = redPackBalanceService.selectByPrimaryKey(uid);
            if (redPackBalance != null && redPackBalance.getState() != null 
@@ -62,7 +82,7 @@
            Date nowTime = new Date();
            Date firstLoginTime = userInfoExtra.getFirstLoginTime();
            int days = DateUtil.daysBetween2(firstLoginTime, nowTime);
            if (days > Constant.RED_PACK_NEW_USER_DAYS)
            if (days >= Constant.RED_PACK_NEW_USER_DAYS)
                return false; // 已经超出设置天数
            
            RedPackWinNewUser redPackWin = redPackWinNewUserDao.getByUid(uid);
fanli/src/main/java/com/yeshi/fanli/service/inter/redpack/RedPackWinNewUserService.java
@@ -17,7 +17,7 @@
     * @param uid
     * @return
     */
    public boolean verifyHasReward(Long uid);
    public boolean verifyHasReward(Long uid, String device);
    
    
fanli/src/main/java/com/yeshi/fanli/util/factory/goods/GoodsDetailVOFactory.java
@@ -441,17 +441,17 @@
            goodsInfo = loadYuShouInfo(goodsInfo, goods, null, params.getFanLiRate(), params.getShareRate());
        }
//        if (Constant.IS_TEST) {
//            // 添加标签
//            List<ClientTextStyleVO> labels = goodsInfo.getLabels();
//            if (labels == null)
//                labels = new ArrayList<>();
//
//            labels.add(new ClientTextStyleVO("预售", "#FF2B4E"));
//            labels.add(new ClientTextStyleVO("爆款", "#FF2B4E"));
//            labels.add(new ClientTextStyleVO("超级划算", "#FF2B4E"));
//            goodsInfo.setLabels(labels);
//        }
        if (Constant.IS_TEST) {
            // 添加标签
            List<ClientTextStyleVO> labels = goodsInfo.getLabels();
            if (labels == null)
                labels = new ArrayList<>();
            labels.add(new ClientTextStyleVO("预售", "#FF2B4E"));
            labels.add(new ClientTextStyleVO("爆款", "#FF2B4E"));
            labels.add(new ClientTextStyleVO("超级划算", "#FF2B4E"));
            goodsInfo.setLabels(labels);
        }
        
        return goodsInfo;
    }