admin
2019-06-26 fec21610e3a2574a4d474a738bc76081a59ef27e
淘礼金分享路径修改
3个文件已修改
75 ■■■■ 已修改文件
fanli/src/main/java/com/yeshi/fanli/service/impl/tlj/UserTaoLiJinRecordServiceImpl.java 57 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserExtraTaoBaoInfoServiceImpl.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/inter/user/UserExtraTaoBaoInfoService.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/tlj/UserTaoLiJinRecordServiceImpl.java
@@ -29,15 +29,18 @@
import com.yeshi.fanli.service.inter.goods.CommonGoodsService;
import com.yeshi.fanli.service.inter.hongbao.HongBaoManageService;
import com.yeshi.fanli.service.inter.msg.UserOtherMsgNotificationService;
import com.yeshi.fanli.service.inter.taobao.TaoBaoBuyRelationMapService;
import com.yeshi.fanli.service.inter.tlj.ConfigTaoLiJinService;
import com.yeshi.fanli.service.inter.tlj.UserTaoLiJinDetailService;
import com.yeshi.fanli.service.inter.tlj.UserTaoLiJinOriginService;
import com.yeshi.fanli.service.inter.tlj.UserTaoLiJinRecordService;
import com.yeshi.fanli.service.inter.tlj.UserTaoLiJinReportService;
import com.yeshi.fanli.service.inter.user.UserExtraTaoBaoInfoService;
import com.yeshi.fanli.service.inter.user.UserInfoExtraService;
import com.yeshi.fanli.service.inter.user.UserMoneyExtraService;
import com.yeshi.fanli.util.MoneyBigDecimalUtil;
import com.yeshi.fanli.util.RedisManager;
import com.yeshi.fanli.util.StringUtil;
import com.yeshi.fanli.util.TaoBaoConstant;
import com.yeshi.fanli.util.factory.CommonGoodsFactory;
import com.yeshi.fanli.util.taobao.TaoKeApiUtil;
@@ -84,6 +87,12 @@
    @Resource
    private UserInfoExtraService userInfoExtraService;
    @Resource
    private UserExtraTaoBaoInfoService userExtraTaoBaoInfoService;
    @Resource
    private TaoBaoBuyRelationMapService taoBaoBuyRelationMapService;
    @Override
    public UserTaoLiJinRecord selectByPrimaryKey(Long id) {
        return userTaoLiJinRecordMapper.selectByPrimaryKey(id);
@@ -115,16 +124,35 @@
        // 新人红包 自购一元
        BigDecimal perface = new BigDecimal(1);
        String pid = TaoBaoConstant.TAOBAO_SPECIAL_PID_DEFAULT;
        if (goods.getMaterialLibType() == null || goods.getMaterialLibType() == 0)
            pid = TaoBaoConstant.TAOBAO_RELATION_AS_SPECIAL_PID;
        if (goods.getMaterialLibType() == null || goods.getMaterialLibType() == 0) {// 非返利库商品
            String relationId = null;
            try {
                relationId = taoBaoBuyRelationMapService.getRelationId(uid);
            } catch (Exception e) {
                LogHelper.errorDetailInfo(e, "uid:" + uid, null);
            }
            if (StringUtil.isNullOrEmpty(relationId)) {
                throw new UserTaoLiJinRecordException(101, "渠道未备案");
            }
            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);
            return record;
        } else {// 返利库商品
        return createUserTaoLiJin(1, uid, goods.getAuctionId(), perface, 1, name, sendStartTime, sendEndTime, null,
                useEndTime, pid);
                    useEndTime, TaoBaoConstant.TAOBAO_SPECIAL_PID_DEFAULT);
        }
    }
    @Override
    public UserTaoLiJinRecord createShareTaoLiJin(Long uid, int totalNum, TaoBaoGoodsBrief goods)
            throws UserTaoLiJinRecordException {
        String relationId = userExtraTaoBaoInfoService.getRelationIdByUid(uid);
        if (StringUtil.isNullOrEmpty(relationId))
            throw new UserTaoLiJinRecordException(101, "渠道未授权");
        Date date = new Date();
        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
        SimpleDateFormat formatStr = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
@@ -164,14 +192,18 @@
            perface = TaoLiJinUtil.getSpreadMoney(warningRate, goods);
        }
        return createUserTaoLiJin(2, uid, goods.getAuctionId(), perface, totalNum, name, sendStartTime, sendEndTime,
                null, useEndTime, TaoBaoConstant.TAOBAO_RELATION_PID_DEFAULT);
        UserTaoLiJinRecord record = createUserTaoLiJin(2, uid, goods.getAuctionId(), perface, totalNum, name,
                sendStartTime, sendEndTime, null, useEndTime, TaoBaoConstant.TAOBAO_RELATION_PID_DEFAULT);
        String sendUrl = record.getSendUrl() + "&relationId=" + relationId;
        record.setSendUrl(sendUrl);
        return record;
    }
    @Override
    @Transactional
    public UserTaoLiJinRecord createUserTaoLiJin(int origin, Long uid, Long auctionId, BigDecimal perface, int totalNum, String name,
            Date sendStartTime, Date sendEndTime, Date useStartTime, Date useEndTime,String pid) throws UserTaoLiJinRecordException{
    public UserTaoLiJinRecord createUserTaoLiJin(int origin, Long uid, Long auctionId, BigDecimal perface, int totalNum,
            String name, Date sendStartTime, Date sendEndTime, Date useStartTime, Date useEndTime, String pid)
            throws UserTaoLiJinRecordException {
        
        // 用户剩余可以淘礼金验证
        UserMoneyExtra userMoneyExtra = userMoneyExtraService.selectByPrimaryKey(uid);
@@ -189,7 +221,8 @@
        }
        
        // 创建淘礼金红包
        TaoLiJinDTO taoLiJinDTO = TaoKeApiUtil.createTaoLiJin(auctionId, name, perface, totalNum, sendStartTime, sendEndTime, useStartTime, useEndTime, pid);
        TaoLiJinDTO taoLiJinDTO = TaoKeApiUtil.createTaoLiJin(auctionId, name, perface, totalNum, sendStartTime,
                sendEndTime, useStartTime, useEndTime, pid);
        if (taoLiJinDTO == null) {
            throw new UserTaoLiJinRecordException(101, "红包创建失败");
        }
@@ -238,7 +271,6 @@
                    LogHelper.errorDetailInfo(e);
                }
                
                // 成功使用红包
                try {
                    BigDecimal total = totalMoney;
@@ -272,8 +304,6 @@
                    LogHelper.errorDetailInfo(e);
                }
                
                // 使用成功消息
                try {
                    String beizhu = "未被领取/使用的部分将会退回";
@@ -299,7 +329,8 @@
                
                // 检测商品是否存在
                try {
                    CommonGoods commonGoods = commonGoodsService.getCommonGoodsByGoodsIdAndGoodsType(auctionId, CommonGoods.GOODS_TYPE_TB);
                    CommonGoods commonGoods = commonGoodsService.getCommonGoodsByGoodsIdAndGoodsType(auctionId,
                            CommonGoods.GOODS_TYPE_TB);
                    if (commonGoods == null) {
                        TaoBaoGoodsBrief taoBaoGoodsBrief = redisManager.getTaoBaoGoodsBrief(auctionId);
                        if (taoBaoGoodsBrief != null) {
fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserExtraTaoBaoInfoServiceImpl.java
@@ -270,6 +270,16 @@
        if (StringUtil.isNullOrEmpty(specialId))
            return null;
        return userExtraTaoBaoInfoMapper.selectBySpecialIdWithUidNotNull(specialId);
    }
    @Override
    public String getRelationIdByUid(Long uid) {
        UserExtraTaoBaoInfo extraInfo = getByUid(uid);
        String relationId = null;
        if (extraInfo != null && extraInfo.getRelationId() != null && extraInfo.getRelationValid() != null
                && extraInfo.getRelationValid() == true)
            relationId = extraInfo.getRelationId();
        return relationId;
    }
}
fanli/src/main/java/com/yeshi/fanli/service/inter/user/UserExtraTaoBaoInfoService.java
@@ -85,4 +85,12 @@
     */
    public void saveUserTaoBaoInfo(Long uid, String relationId, String specialId, String taoBaoUid, String nickName,
            boolean valid) throws UserExtraTaoBaoInfoException;
    /**
     * 获取渠道ID
     * @param uid
     * @return
     */
    public String getRelationIdByUid(Long uid);
}