admin
2019-08-26 8cb383dcbfd972de368cdb556eff4293d14cf33e
Merge branch 'mater-1.6.0' into div

Conflicts:
fanli/src/main/java/com/yeshi/fanli/service/impl/tlj/UserTaoLiJinRecordServiceImpl.java
11个文件已修改
3个文件已添加
231 ■■■■ 已修改文件
fanli/src/main/java/com/yeshi/fanli/controller/client/v1/GoodsController.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/dao/taobao/TLJBuyGoodsDao.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/exception/BaseException.java 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/exception/taobao/TaoKeApiException.java 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/exception/tlj/TaoLiJinCreateException.java 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/log/TLJLogHelper.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/goods/ShareGoodsServiceImpl.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/taobao/ShareHotGoodsServiceImpl.java 18 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/taobao/TLJBuyGoodsServiceImpl.java 13 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/tlj/UserTaoLiJinRecordServiceImpl.java 64 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/inter/goods/ShareGoodsService.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/inter/taobao/TLJBuyGoodsService.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoKeApiUtil.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/resource/log4j.properties 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/client/v1/GoodsController.java
@@ -23,6 +23,7 @@
import com.yeshi.fanli.entity.taobao.TaoKeAppInfo;
import com.yeshi.fanli.exception.ShareGoodsException;
import com.yeshi.fanli.exception.taobao.TaobaoGoodsDownException;
import com.yeshi.fanli.exception.tlj.TaoLiJinCreateException;
import com.yeshi.fanli.log.LogHelper;
import com.yeshi.fanli.service.inter.goods.ShareGoodsService;
import com.yeshi.fanli.service.inter.goods.recommend.RecommendGoodsDeleteHistoryService;
@@ -93,7 +94,7 @@
    private void doTaoLiJinBuy(AcceptData acceptData, Long uid, Long auctionId, PrintWriter out) {
        JSONObject data = new JSONObject();
        TaoBaoLink taoBaoLink;
        TaoBaoLink taoBaoLink = null;
        try {
            // 根据日期与商品ID查询
            TLJBuyGoods tljBuyGoods = tljBuyGoodsService.selectByAuctionIdAndDay(auctionId,
@@ -106,6 +107,9 @@
            }
            TaoKeAppInfo app = new TaoKeAppInfo(config.getAppKey(), config.getAppSecret(), config.getDefaultPid());
            taoBaoLink = shareGoodsService.getTaoLiJinLinkForBuyWithOutFanLi(uid, auctionId, app);
        } catch (TaoLiJinCreateException e1) {
            out.print(JsonUtil.loadFalseResult(e1.getCode(), "淘礼金红包创建失败"));
            return;
        } catch (ShareGoodsException e) {
            out.print(JsonUtil.loadFalseResult(e.getCode(), e.getMessage()));
            return;
fanli/src/main/java/com/yeshi/fanli/dao/taobao/TLJBuyGoodsDao.java
@@ -56,6 +56,18 @@
    }
    /**
     * 根据商品ID删除
     *
     * @param auctionId
     */
    public void deleteByAuctionId(Long auctionId) {
        Query query = new Query();
        Criteria ca = Criteria.where("goods.auctionId").is(auctionId);
        query.addCriteria(ca);
        mongoTemplate.findAndRemove(query, TLJBuyGoods.class);
    }
    /**
     * 减红包个数
     * 
     * @param id
fanli/src/main/java/com/yeshi/fanli/exception/BaseException.java
New file
@@ -0,0 +1,28 @@
package com.yeshi.fanli.exception;
public class BaseException extends Exception {
    private static final long serialVersionUID = 1L;
    private int code;
    private String msg;
    public int getCode() {
        return code;
    }
    public String getMsg() {
        return msg;
    }
    public BaseException(int code, String msg) {
        this.code = code;
        this.msg = msg;
    }
    public BaseException() {
    }
    @Override
    public String getMessage() {
        return this.msg;
    }
}
fanli/src/main/java/com/yeshi/fanli/exception/taobao/TaoKeApiException.java
@@ -18,10 +18,7 @@
    // 其他错误
    public static final int CODE_OTHER = 4;
    
    // 商品支持创建红包
    public static final int CODE_TLJ_FORBIDDEN = 101;
    // 官方账户余额不足
    public static final int CODE_TLJ_NO_MONEY = 102;
    
    private int code;
fanli/src/main/java/com/yeshi/fanli/exception/tlj/TaoLiJinCreateException.java
New file
@@ -0,0 +1,26 @@
package com.yeshi.fanli.exception.tlj;
import com.yeshi.fanli.exception.BaseException;
/**
 * 淘礼金创建异常
 *
 * @author Administrator
 *
 */
public class TaoLiJinCreateException extends BaseException {
    public TaoLiJinCreateException(int code, String msg) {
        super(code, msg);
    }
    public TaoLiJinCreateException() {
        super();
    }
    // 商品支持创建红包
    public static final int CODE_TLJ_FORBIDDEN = 101;
    // 官方账户余额不足
    public static final int CODE_TLJ_NO_MONEY = 102;
}
fanli/src/main/java/com/yeshi/fanli/log/TLJLogHelper.java
New file
@@ -0,0 +1,14 @@
package com.yeshi.fanli.log;
import org.apache.log4j.Logger;
public class TLJLogHelper {
    // log
    private static Logger tljLogger = Logger.getLogger("tljLog");
    public static void info(Long auctionId, String msg) {
        String message = String.format("商品ID:  错误信息:%s", auctionId + "", msg);
        tljLogger.info(message);
    }
}
fanli/src/main/java/com/yeshi/fanli/service/impl/goods/ShareGoodsServiceImpl.java
@@ -38,9 +38,9 @@
import com.yeshi.fanli.exception.ShareGoodsException;
import com.yeshi.fanli.exception.taobao.TaoKeApiException;
import com.yeshi.fanli.exception.taobao.TaobaoGoodsDownException;
import com.yeshi.fanli.exception.tlj.TaoLiJinCreateException;
import com.yeshi.fanli.exception.tlj.UserTaoLiJinRecordException;
import com.yeshi.fanli.log.LogHelper;
import com.yeshi.fanli.service.impl.monitor.BusinessEmergent110ServiceImpl;
import com.yeshi.fanli.service.inter.config.ConfigService;
import com.yeshi.fanli.service.inter.goods.CommonGoodsService;
import com.yeshi.fanli.service.inter.goods.ShareGoodsService;
@@ -798,7 +798,7 @@
    @Override
    public TaoBaoLink getTaoLiJinLinkForBuyWithOutFanLi(Long uid, Long auctionId, TaoKeAppInfo app)
            throws ShareGoodsException {
            throws ShareGoodsException, TaoLiJinCreateException {
        if (uid == null || uid <= 0) {
            throw new ShareGoodsException(1, "用户ID不能为空");
        }
@@ -828,14 +828,19 @@
            taoLiJinDTO = TaoKeApiUtil.createTaoLiJin(auctionId, "自购立减", perface, 1,
                    new Date(currentTime - 1000 * 60 * 10L), sendEndTime, new Date(currentTime - 1000 * 60 * 10L),
                    sendEndTime, app);
        } catch (TaoKeApiException e) {
            if (e.getCode() == TaoKeApiException.CODE_TLJ_NO_MONEY) {// 资金不足
        } catch (TaoLiJinCreateException e1) {
            if (e1.getCode() == TaoLiJinCreateException.CODE_TLJ_NO_MONEY) {// 资金不足
                TaoBaoUnionConfig config = taoBaoUnionConfigService.getConfigByAppKeyCache(app.getAppKey());
                businessEmergent110Service.tljNoMoney(config.getAccount());
            } else if (e1.getCode() == TaoLiJinCreateException.CODE_TLJ_FORBIDDEN) {// 商品不允许创建淘礼金
                tljBuyGoodsService.removeGoods(auctionId);
            }
            LogHelper.errorDetailInfo(e1, e1.getMessage(), null);
        } catch (TaoKeApiException e) {
            LogHelper.errorDetailInfo(e, e.getMessage(), null);
            throw new ShareGoodsException(5, "生成推广链接失败");
        }
        if (taoLiJinDTO == null)
            throw new ShareGoodsException(5, "生成推广链接失败");
fanli/src/main/java/com/yeshi/fanli/service/impl/taobao/ShareHotGoodsServiceImpl.java
@@ -14,14 +14,15 @@
import org.springframework.stereotype.Service;
import com.yeshi.fanli.dao.taobao.ShareHotGoodsDao;
import com.yeshi.fanli.dto.taobao.TaoLiJinDTO;
import com.yeshi.fanli.entity.taobao.ShareHotGoods;
import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief;
import com.yeshi.fanli.entity.taobao.TaoKeAppInfo;
import com.yeshi.fanli.entity.taobao.dataoke.DaTaoKeDetailV2;
import com.yeshi.fanli.exception.taobao.TaoKeApiException;
import com.yeshi.fanli.exception.tlj.TaoLiJinCreateException;
import com.yeshi.fanli.service.inter.goods.TaoBaoGoodsBriefService;
import com.yeshi.fanli.service.inter.taobao.ShareHotGoodsService;
import com.yeshi.fanli.service.inter.taobao.TLJBuyGoodsService;
import com.yeshi.fanli.service.inter.taobao.TaoBaoGoodsUpdateService;
import com.yeshi.fanli.service.inter.taobao.dataoke.DaTaoKeGoodsDetailService;
import com.yeshi.fanli.service.inter.taobao.dataoke.DaTaoKeGoodsDetailV2Service;
@@ -50,7 +51,7 @@
    @Resource
    private ConfigTaoLiJinService configTaoLiJinService;
    @Override
    public void addShareHotGoods(ShareHotGoods goods) {
        if (goods == null || StringUtil.isNullOrEmpty(goods.getDay()) || goods.getGoods() == null)
@@ -128,19 +129,18 @@
    @Override
    public boolean verifyCanCreateTLJ(Long auctionId, TaoKeAppInfo info) {
        TaoLiJinDTO taoLiJinDTO = null;
        try {
            taoLiJinDTO = TaoKeApiUtil.createTaoLiJin(auctionId, "淘礼金验证", new BigDecimal("1.00"), 1, new Date(),
            TaoKeApiUtil.createTaoLiJin(auctionId, "淘礼金验证", new BigDecimal("1.00"), 1, new Date(),
                    new Date(System.currentTimeMillis() + 1000 * 60 * 60 * 6), new Date(),
                    new Date(System.currentTimeMillis() + 1000 * 60 * 60 * 6), info);
        } catch (TaoKeApiException e) {
            if (e.getCode() == TaoKeApiException.CODE_TLJ_FORBIDDEN) {
                // 该商品不支持创建淘礼金红包
        } catch (TaoLiJinCreateException e1) {
            if (e1.getCode() == TaoLiJinCreateException.CODE_TLJ_FORBIDDEN) {// 商品不允许创建淘礼金
                deleteByGoodsId(auctionId);
                return false;
            } else if (e.getCode() == TaoKeApiException.CODE_TLJ_NO_MONEY) {
                // 官方玩法钱包余额不足 TODO
            }
        } catch (TaoKeApiException e) {
        }
        return true;
    }
fanli/src/main/java/com/yeshi/fanli/service/impl/taobao/TLJBuyGoodsServiceImpl.java
@@ -22,6 +22,7 @@
import com.yeshi.fanli.entity.taobao.TaoKeAppInfo;
import com.yeshi.fanli.entity.taobao.dataoke.DaTaoKeDetailV2;
import com.yeshi.fanli.exception.taobao.TaoKeApiException;
import com.yeshi.fanli.exception.tlj.TaoLiJinCreateException;
import com.yeshi.fanli.service.inter.goods.TaoBaoGoodsBriefService;
import com.yeshi.fanli.service.inter.taobao.TLJBuyGoodsService;
import com.yeshi.fanli.service.inter.taobao.TaoBaoGoodsUpdateService;
@@ -173,14 +174,15 @@
            taoLiJinDTO = TaoKeApiUtil.createTaoLiJin(auctionId, "淘礼金验证", new BigDecimal("1.00"), 1, new Date(),
                    new Date(System.currentTimeMillis() + 1000 * 60 * 60 * 6), new Date(),
                    new Date(System.currentTimeMillis() + 1000 * 60 * 60 * 6), app);
        } catch (TaoKeApiException e) {
            if (e.getCode() == TaoKeApiException.CODE_TLJ_FORBIDDEN) {
        } catch (TaoLiJinCreateException e1) {
            if (e1.getCode() == TaoLiJinCreateException.CODE_TLJ_FORBIDDEN) {
                // 该商品不支持创建淘礼金红包
                deleteByGoodsId(auctionId);
                return false;
            } else if (e.getCode() == TaoKeApiException.CODE_TLJ_NO_MONEY) {
            } else if (e1.getCode() == TaoLiJinCreateException.CODE_TLJ_NO_MONEY) {
                // 官方玩法钱包余额不足 TODO
            }
        } catch (TaoKeApiException e) {
        }
        return true;
    }
@@ -254,4 +256,9 @@
        return tljBuyGoodsDao.selectByAuctionIdAndDay(auctionId, day);
    }
    @Override
    public void removeGoods(Long auctionId) {
        tljBuyGoodsDao.deleteByAuctionId(auctionId);
    }
}
fanli/src/main/java/com/yeshi/fanli/service/impl/tlj/UserTaoLiJinRecordServiceImpl.java
@@ -30,6 +30,7 @@
import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief;
import com.yeshi.fanli.entity.taobao.TaoKeAppInfo;
import com.yeshi.fanli.exception.taobao.TaoKeApiException;
import com.yeshi.fanli.exception.tlj.TaoLiJinCreateException;
import com.yeshi.fanli.exception.tlj.UserTaoLiJinRecordException;
import com.yeshi.fanli.log.LogHelper;
import com.yeshi.fanli.service.inter.config.ConfigService;
@@ -116,14 +117,12 @@
    
    @Resource
    private UserTaoLiJinGiveRecordService userTaoLiJinGiveRecordService;
    @Override
    public UserTaoLiJinRecord selectByPrimaryKey(Long id) {
        return userTaoLiJinRecordMapper.selectByPrimaryKey(id);
    }
    @Transactional
    @Override
    public UserTaoLiJinRecord createSelfBuyTaoLiJin(Long uid, int totalNum, TaoBaoGoodsBrief goods)
@@ -165,7 +164,7 @@
            UserTaoLiJinRecord record = createUserTaoLiJin(1, uid, goods.getAuctionId(), perface, 1, name,
                    sendStartTime, sendEndTime, null, useEndTime, TaoBaoConstant.TAOBAO_RELATION_AS_SPECIAL_PID);
            record.setSendUrl(record.getSendUrl() + "&relationId=" + relationId);
            UserTaoLiJinRecord updateRecoed=new UserTaoLiJinRecord();
            UserTaoLiJinRecord updateRecoed = new UserTaoLiJinRecord();
            updateRecoed.setId(record.getId());
            updateRecoed.setSendUrl(record.getSendUrl());
            userTaoLiJinRecordMapper.updateByPrimaryKeySelective(record);
@@ -220,7 +219,7 @@
            perface = new BigDecimal(1);
        } else {
            // 计算推广红包
            String warningRate = configTaoLiJinService.getValueByKey("warning_value",new Date());
            String warningRate = configTaoLiJinService.getValueByKey("warning_value", new Date());
            perface = TaoLiJinUtil.getSpreadMoney(warningRate, goods);
        }
@@ -228,7 +227,7 @@
                sendStartTime, sendEndTime, null, useEndTime, TaoBaoConstant.TAOBAO_TLJ_RELATION_PID_DEFAULT);
        String sendUrl = record.getSendUrl() + "&relationId=" + relationId;
        record.setSendUrl(sendUrl);
        UserTaoLiJinRecord updateRecoed=new UserTaoLiJinRecord();
        UserTaoLiJinRecord updateRecoed = new UserTaoLiJinRecord();
        updateRecoed.setId(record.getId());
        updateRecoed.setSendUrl(sendUrl);
        userTaoLiJinRecordMapper.updateByPrimaryKeySelective(record);
@@ -249,45 +248,46 @@
        // 过期 -取消收回
        // userTaoLiJinOriginService.overdueHongBao(uid);
        // 总推广红包
        BigDecimal totalMoney = MoneyBigDecimalUtil.mul(perface, new BigDecimal(totalNum));
        // 自购时的红包余额
        if (origin == 1) {
            BigDecimal tljSelf = userMoneyExtra.getTljSelf();
            if (tljSelf == null || tljSelf.compareTo(totalMoney) < 0) {
                throw new UserTaoLiJinRecordException(101, "自购红包余额不足");
            }
        }
        }
        // 分享时的红包余额
        BigDecimal tlj = userMoneyExtra.getTlj();
        if (tlj == null || tlj.compareTo(totalMoney) < 0) {
            throw new UserTaoLiJinRecordException(101, "分享红包余额不足");
        }
        // 创建淘礼金红包
        TaoLiJinDTO taoLiJinDTO = null;
        try {
            taoLiJinDTO = TaoKeApiUtil.createTaoLiJin(auctionId, name, perface, totalNum, sendStartTime,
                    sendEndTime, useStartTime, useEndTime,    new TaoKeAppInfo(TaoBaoConstant.TAOBAO_AUTH_APPKEY, TaoBaoConstant.TAOBAO_AUTH_APPSECRET, pid));
        } catch (TaoKeApiException e) {
            taoLiJinDTO = TaoKeApiUtil.createTaoLiJin(auctionId, name, perface, totalNum, sendStartTime, sendEndTime,
                    useStartTime, useEndTime,
                    new TaoKeAppInfo(TaoBaoConstant.TAOBAO_AUTH_APPKEY, TaoBaoConstant.TAOBAO_AUTH_APPSECRET, pid));
        } catch (TaoLiJinCreateException e) {
            LogHelper.errorDetailInfo(e);
            executor.execute(new Runnable() {
                @Override
                public void run() {
                    if (e.getCode() == TaoKeApiException.CODE_TLJ_FORBIDDEN) {
                    if (e.getCode() == TaoLiJinCreateException.CODE_TLJ_FORBIDDEN) {
                        // 该商品不支持创建淘礼金红包
                        shareHotGoodsService.deleteByGoodsId(auctionId);
                    } else if (e.getCode() == TaoKeApiException.CODE_TLJ_NO_MONEY) {
                        // 官方玩法钱包余额不足  TODO
                    } else if (e.getCode() == TaoLiJinCreateException.CODE_TLJ_NO_MONEY) {
                        // 官方玩法钱包余额不足 TODO
                    }
                }
            });
        } catch (TaoKeApiException e1) {
        }
        if (taoLiJinDTO == null) {
            throw new UserTaoLiJinRecordException(101, "淘宝API推广红包创建失败");
        }
@@ -306,21 +306,21 @@
        record.setRightsId(taoLiJinDTO.getRightsId());
        record.setSendUrl(taoLiJinDTO.getSendUrl());
        record.setCreateTime(new Date());
        if (origin == 1) { //  自购
        if (origin == 1) { // 自购
            record.setUseType(1);
        } else { //  分享
        } else { // 分享
            record.setUseType(2);
        }
        userTaoLiJinRecordMapper.insertSelective(record);
        BigDecimal surplusTlj = MoneyBigDecimalUtil.sub(tlj, totalMoney);
        BigDecimal surplusTlj = MoneyBigDecimalUtil.sub(tlj, totalMoney);
        UserMoneyExtra updateExtra = new UserMoneyExtra();
        updateExtra.setUid(uid);
        if (origin == 1) { // 剩余淘礼金-- 自购
            updateExtra.setTljSelf(MoneyBigDecimalUtil.sub(userMoneyExtra.getTljSelf(), totalMoney));
        }
        }
        updateExtra.setTlj(surplusTlj);
        updateExtra.setUpdateTime(new Date());
        userMoneyExtraService.updateByPrimaryKeySelective(updateExtra);
@@ -384,13 +384,11 @@
                } catch (Exception e) {
                    LogHelper.errorDetailInfo(e);
                }
                if (origin == 1) {
                    return; //  自购不推送消息
                if (origin == 1) {
                    return; // 自购不推送消息
                }
                // 使用成功消息
                try {
                    String beizhu = "未被领取或领取后未使用部分退回";
@@ -476,7 +474,8 @@
            BigDecimal commission = userTaoLiJinRecordVO.getCommission();
            if (commission != null && commission.compareTo(shareMoney) > 0) {
                BigDecimal shareRate = hongBaoManageService.getShareRate();
                shareMoney = MoneyBigDecimalUtil.mul(commission, MoneyBigDecimalUtil.div(shareRate, new BigDecimal(100)));
                shareMoney = MoneyBigDecimalUtil.mul(commission,
                        MoneyBigDecimalUtil.div(shareRate, new BigDecimal(100)));
                shareMoney = BigDecimalUtil.getWithNoZera(shareMoney);
            }
@@ -498,8 +497,7 @@
    public long countShareRecordByUid(Long uid) {
        return userTaoLiJinRecordMapper.countShareRecordByUid(uid);
    }
    @Override
    public long countTodayNum(Long uid) {
        return userTaoLiJinRecordMapper.countTodayNum(uid);
fanli/src/main/java/com/yeshi/fanli/service/inter/goods/ShareGoodsService.java
@@ -5,6 +5,7 @@
import com.yeshi.fanli.entity.taobao.TaoBaoLink;
import com.yeshi.fanli.entity.taobao.TaoKeAppInfo;
import com.yeshi.fanli.exception.ShareGoodsException;
import com.yeshi.fanli.exception.tlj.TaoLiJinCreateException;
public interface ShareGoodsService {
@@ -140,6 +141,6 @@
     * @return
     * @throws ShareGoodsException
     */
    public TaoBaoLink getTaoLiJinLinkForBuyWithOutFanLi(Long uid,  Long auctionId,TaoKeAppInfo app) throws ShareGoodsException;
    public TaoBaoLink getTaoLiJinLinkForBuyWithOutFanLi(Long uid,  Long auctionId,TaoKeAppInfo app) throws ShareGoodsException,TaoLiJinCreateException;
}
fanli/src/main/java/com/yeshi/fanli/service/inter/taobao/TLJBuyGoodsService.java
@@ -74,7 +74,7 @@
     * @param auctionId
     * @return
     */
    public boolean verifyCanCreateTLJ(Long auctionId,TaoKeAppInfo app);
    public boolean verifyCanCreateTLJ(Long auctionId, TaoKeAppInfo app);
    /**
     * 更新商品
@@ -101,4 +101,10 @@
     */
    public TLJBuyGoods selectByAuctionIdAndDay(Long auctionId, String day);
    /*
     * 删除商品
     *
     */
    public void removeGoods(Long auctionId);
}
fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoKeApiUtil.java
@@ -25,7 +25,9 @@
import com.yeshi.fanli.exception.taobao.TaoBaoAuthException;
import com.yeshi.fanli.exception.taobao.TaoKeApiException;
import com.yeshi.fanli.exception.taobao.TaobaoGoodsDownException;
import com.yeshi.fanli.exception.tlj.TaoLiJinCreateException;
import com.yeshi.fanli.log.LogHelper;
import com.yeshi.fanli.log.TLJLogHelper;
import com.yeshi.fanli.log.TaoKeLogHelper;
import com.yeshi.fanli.tag.PageEntity;
import com.yeshi.fanli.util.MoneyBigDecimalUtil;
@@ -1903,7 +1905,7 @@
    // 淘礼金创建
    public static TaoLiJinDTO createTaoLiJin(Long auctionId, String name, BigDecimal perface, int totalNum,
            Date sendStartTime, Date sendEndTime, Date useStartTime, Date useEndTime, TaoKeAppInfo app)
            throws TaoKeApiException {
            throws TaoKeApiException, TaoLiJinCreateException {
        Map<String, String> map = new HashMap<>();
        map.put("method", "taobao.tbk.dg.vegas.tlj.create");
        map.put("adzone_id", app.getPid().split("_")[3]);
@@ -1945,14 +1947,15 @@
                // 接口返回异常
                String msgCode = root.optJSONObject("result").optString("msg_code");
                if (!StringUtil.isNullOrEmpty(msgCode)) {
                    TLJLogHelper.info(auctionId, root.toString());// 淘礼金异常信息记录
                    switch (msgCode) {
                    case "FAIL_BIZ_ITEM_FORBIDDEN":
                        throw new TaoKeApiException(TaoKeApiException.CODE_TLJ_FORBIDDEN, "该商品不支持创建淘礼金红包");
                        throw new TaoLiJinCreateException(TaoLiJinCreateException.CODE_TLJ_FORBIDDEN, "该商品不支持创建淘礼金红包");
                    case "FAIL_BIZ_ACCOUNT_UN_PAID":
                    case "PRE_FREEZE_ASSET_ACCOUNT_ERROR":
                        throw new TaoKeApiException(TaoKeApiException.CODE_TLJ_NO_MONEY, "官方玩法钱包余额不足");
                        throw new TaoLiJinCreateException(TaoLiJinCreateException.CODE_TLJ_NO_MONEY, "官方玩法钱包余额不足");
                    default:
                        return null;
                        throw new TaoKeApiException(Integer.parseInt(msgCode), root.toString());
                    }
                }
            }
fanli/src/main/resource/log4j.properties
@@ -199,6 +199,16 @@
log4j.appender.requestTimeLog.layout=org.apache.log4j.PatternLayout
log4j.appender.requestTimeLog.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} [%c]-[%p] %m%n
log4j.logger.tljLog=info,tljLog
log4j.appender.tljLog=org.apache.log4j.DailyRollingFileAppender
log4j.appender.tljLog.File=logs/request/requestTimeLog.log
log4j.appender.tljLog.MaxFileSize=20MB
log4j.appender.tljLog.MaxBackupIndex=100
log4j.appender.tljLog.layout=org.apache.log4j.PatternLayout
log4j.appender.tljLog.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} [%c]-[%p] %m%n
log4j.appender.mongodb=org.apache.log4j.ConsoleAppender
log4j.appender.mongodb.Target=System.out
log4j.appender.mongodb.Threshold=DEBUG