yujian
2019-07-10 b033f04ba557b7187a40f01c5343c9720ab75346
提交
6个文件已修改
183 ■■■■ 已修改文件
fanli/src/main/java/com/yeshi/fanli/dao/mybatis/order/CommonOrderMapper.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/order/CommonOrderServiceImpl.java 42 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/tlj/UserTaoLiJinRecordServiceImpl.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/inter/goods/CommonGoodsService.java 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/inter/order/CommonOrderService.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoBaoUtil.java 100 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/dao/mybatis/order/CommonOrderMapper.java
@@ -213,11 +213,21 @@
    /**
     * 根据来源和交易ID获取订单详情
     *
     * @param sourceType
     * @param tradeId
     * @return
     */
    CommonOrder selectBySourceTypeAndTradeId(@Param("sourceType") int sourceType, @Param("tradeId") String tradeId);
    /**
     * 根据来源和交易ID获取订单列表
     *
     * @param sourceType
     * @param tradeId
     * @return
     */
    List<CommonOrder> listBySourceTypeAndTradeId(@Param("sourceType") int sourceType, @Param("tradeId") String tradeId);
}
fanli/src/main/java/com/yeshi/fanli/service/impl/order/CommonOrderServiceImpl.java
@@ -31,6 +31,7 @@
import com.yeshi.fanli.entity.order.CommonOrder;
import com.yeshi.fanli.entity.order.CommonOrderGoods;
import com.yeshi.fanli.entity.order.CommonOrderTradeIdMap;
import com.yeshi.fanli.entity.order.HongBaoOrder;
import com.yeshi.fanli.entity.pdd.PDDOrder;
import com.yeshi.fanli.entity.system.SystemCoupon.CouponTypeEnum;
import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief;
@@ -45,6 +46,7 @@
import com.yeshi.fanli.service.inter.goods.CommonGoodsService;
import com.yeshi.fanli.service.inter.hongbao.HongBaoV2Service;
import com.yeshi.fanli.service.inter.order.CommonOrderService;
import com.yeshi.fanli.service.inter.order.HongBaoOrderService;
import com.yeshi.fanli.service.inter.user.UserSystemCouponRecordService;
import com.yeshi.fanli.service.inter.user.UserSystemCouponService;
import com.yeshi.fanli.util.Constant;
@@ -99,6 +101,9 @@
    @Resource
    private CommonGoodsService commonGoodsService;
    @Resource
    private HongBaoOrderService hongBaoOrderService;
    // 奖励订单图片
    public final static String PIC_REWARD = "http://img.flqapp.com/resource/order/order_state_reward.png";
@@ -791,7 +796,8 @@
            return commonOrder;
        } else {// 修改
            // 已经结算或者已经失效的订单不处理
            if (oldCommonOrder.getState() == CommonOrder.STATE_JS || oldCommonOrder.getState() == CommonOrder.STATE_SX) {
            if (oldCommonOrder.getState() == CommonOrder.STATE_JS
                    || oldCommonOrder.getState() == CommonOrder.STATE_SX) {
                return oldCommonOrder;
            }
            // 交易ID一致才修改
@@ -1139,4 +1145,38 @@
        return commonOrderMapper.selectBySourceTypeAndTradeId(sourceType, tradeId);
    }
    @Transactional
    @Override
    public void deleteErrorCommonOrder(Long coId) {
        // 查询是否返利到账
        HongBaoOrder hongBaoOrder = hongBaoOrderService.selectDetailByCommonOrderId(coId);
        if (hongBaoOrder.getHongBaoV2().getState() == HongBaoV2.STATE_YILINGQU)
            return;
        List<HongBaoV2> hongBaoList = hongBaoV2Service.listChildrenById(hongBaoOrder.getHongBaoV2().getId());
        boolean canDelete = true;
        for (HongBaoV2 child : hongBaoList)
            if (child.getState() == HongBaoV2.STATE_YILINGQU) {
                canDelete = false;
                break;
            }
        // 不能删除
        if (!canDelete)
            return;
        // 删除child
        for (HongBaoV2 child : hongBaoList)
            hongBaoV2Service.deleteByPrimaryKey(child.getId());
        // 删除主红包
        hongBaoV2Service.deleteByPrimaryKey(hongBaoOrder.getHongBaoV2().getId());
        // 删除hongbaoOrder
        hongBaoOrderService.deleteByPrimaryKey(hongBaoOrder.getId());
        // 删除CommonOrder
        commonOrderMapper.deleteByPrimaryKey(hongBaoOrder.getCommonOrder().getId());
    }
    @Override
    public List<CommonOrder> listBySourceTypeAndTradeId(int sourceType, String tradeId) {
        return commonOrderMapper.listBySourceTypeAndTradeId(sourceType, tradeId);
    }
}
fanli/src/main/java/com/yeshi/fanli/service/impl/tlj/UserTaoLiJinRecordServiceImpl.java
@@ -24,6 +24,7 @@
import com.yeshi.fanli.entity.bus.user.UserMoneyExtra;
import com.yeshi.fanli.entity.goods.CommonGoods;
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.UserTaoLiJinRecordException;
import com.yeshi.fanli.log.LogHelper;
@@ -253,7 +254,7 @@
        TaoLiJinDTO taoLiJinDTO = null;
        try {
            taoLiJinDTO = TaoKeApiUtil.createTaoLiJin(auctionId, name, perface, totalNum, sendStartTime,
                    sendEndTime, useStartTime, useEndTime, pid);
                    sendEndTime, useStartTime, useEndTime,    new TaoKeAppInfo(TaoBaoConstant.TAOBAO_AUTH_APPKEY, TaoBaoConstant.TAOBAO_AUTH_APPSECRET, pid));
        } catch (TaoKeApiException e) {
            LogHelper.errorDetailInfo(e);
            executor.execute(new Runnable() {
fanli/src/main/java/com/yeshi/fanli/service/inter/goods/CommonGoodsService.java
@@ -46,7 +46,7 @@
     * @param goodsId
     * @param goodsType
     */
    public void offlineCommonGoods(Long goodsId, int goodsType);
    public void offlineCommonGoods(Long goodsId, Integer goodsType);
    /**
     * 根据商品ID和商品类型查询库商品
@@ -55,7 +55,7 @@
     * @param goodsType
     * @return
     */
    public CommonGoods getCommonGoodsByGoodsIdAndGoodsType(Long goodsId, int goodsType);
    public CommonGoods getCommonGoodsByGoodsIdAndGoodsType(Long goodsId, Integer goodsType);
    /**
     * 批量更新
@@ -75,14 +75,14 @@
     * @param sellerId
     * @return
     */
    public List<CommonGoods> listBySellerId(Long sellerId);
    public List<CommonGoods> listBySellerId(Long sellerId, Integer goodsType);
    /**
     * 统计店铺商品有券数量
     * @param sellerId
     * @return
     */
    public long countBySellerIdAndHasCoupon(Long sellerId);
    public long countBySellerIdAndHasCoupon(Long sellerId, Integer goodsType);
    /**
@@ -90,6 +90,6 @@
     * @param list
     * @return
     */
    public List<CommonGoods> getByListGoodsId(List<Long> list);
    public List<CommonGoods> getByListGoodsId(List<Long> list, Integer goodsType);
}
fanli/src/main/java/com/yeshi/fanli/service/inter/order/CommonOrderService.java
@@ -253,4 +253,20 @@
     */
    public CommonOrder selectBySourceTypeAndTradeId(int sourceType, String tradeId);
    /**
     * 删除错误订单
     *
     * @param coId
     */
    public void deleteErrorCommonOrder(Long coId);
    /**
     * 根据订单类型与交易ID查询
     *
     * @param sourceType
     * @param tradeId
     * @return
     */
    public List<CommonOrder> listBySourceTypeAndTradeId(int sourceType, String tradeId);
}
fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoBaoUtil.java
@@ -769,13 +769,13 @@
        tg.setSalesType(1);
        // 测试使用
        // tg.setSalesType(Math.random() > 0.5 ? tg.getSalesType() : 3);
//        if(Constant.IS_TEST)
//        {
//         List<ClientTextStyleVO> labels = new ArrayList<>();
//         labels.add(new ClientTextStyleVO("标签内容", "#F14242"));
//         labels.add(new ClientTextStyleVO("标签内容", "#00FF00"));
//         tg.setLabels(labels);
//        }
        // if(Constant.IS_TEST)
        // {
        // List<ClientTextStyleVO> labels = new ArrayList<>();
        // labels.add(new ClientTextStyleVO("标签内容", "#F14242"));
        // labels.add(new ClientTextStyleVO("标签内容", "#00FF00"));
        // tg.setLabels(labels);
        // }
        return tg;
    }
@@ -1822,38 +1822,68 @@
            e.printStackTrace();
        }
        String result = HttpUtil.get(url);
        JSONObject resultJson = JSONObject.fromObject(result);
        JSONObject dataJson = resultJson.optJSONObject("data");
        JSONObject sellerJson = dataJson.optJSONObject("seller");
        TaoBaoShop shop = new TaoBaoShop();
        shop.setGoodRatePercentage(new BigDecimal(sellerJson.optString("goodRatePercentage").replace("%", "")));
        shop.setId(sellerJson.optLong("userId"));
        JSONArray array = sellerJson.optJSONArray("evaluates");
        for (int i = 0; i < array.size(); i++) {
            JSONObject item = array.optJSONObject(i);
            if ("宝贝描述".equalsIgnoreCase(item.optString("title").trim())) {
                shop.setScoreGoods(new BigDecimal(item.optString("score").trim()));
                shop.setScoreGoodsD(new BigDecimal(item.optString("level").trim()));
            } else if ("卖家服务".equalsIgnoreCase(item.optString("title").trim())) {
                shop.setScoreSeller(new BigDecimal(item.optString("score").trim()));
                shop.setScoreSellerD(new BigDecimal(item.optString("level").trim()));
            } else if ("物流服务".equalsIgnoreCase(item.optString("title").trim())) {
                shop.setScoreLogistics(new BigDecimal(item.optString("score").trim()));
                shop.setScoreLogisticsD(new BigDecimal(item.optString("level").trim()));
        try {
            JSONObject resultJson = JSONObject.fromObject(result);
            JSONObject dataJson = resultJson.optJSONObject("data");
            JSONObject sellerJson = dataJson.optJSONObject("seller");
            shop.setGoodRatePercentage(new BigDecimal(sellerJson.optString("goodRatePercentage").replace("%", "")));
            LogHelper.test("卖家信息:" + result);
            shop.setId(sellerJson.optLong("userId"));
            JSONArray array = sellerJson.optJSONArray("evaluates");
            for (int i = 0; i < array.size(); i++) {
                JSONObject item = array.optJSONObject(i);
                if ("宝贝描述".equalsIgnoreCase(item.optString("title").trim())) {
                    shop.setScoreGoods(new BigDecimal(item.optString("score").trim()));
                    shop.setScoreGoodsD(new BigDecimal(item.optString("level").trim()));
                } else if ("卖家服务".equalsIgnoreCase(item.optString("title").trim())) {
                    shop.setScoreSeller(new BigDecimal(item.optString("score").trim()));
                    shop.setScoreSellerD(new BigDecimal(item.optString("level").trim()));
                } else if ("物流服务".equalsIgnoreCase(item.optString("title").trim())) {
                    shop.setScoreLogistics(new BigDecimal(item.optString("score").trim()));
                    shop.setScoreLogisticsD(new BigDecimal(item.optString("level").trim()));
                }
            }
            shop.setSellerNick(sellerJson.optString("sellerNick"));
            shop.setShopIcon("https:" + sellerJson.optString("shopIcon"));
            shop.setShopId(sellerJson.optLong("shopId"));
            shop.setShopName(sellerJson.optString("shopName"));
            if ("B".equalsIgnoreCase(sellerJson.optString("sellerType")))
                shop.setUserType(1);
            else
                shop.setUserType(0);
            shop.setShopLink(TaoBaoUtil.getShopLink(shop.getId()));
        } catch (Exception e) {
            // if (1 > 0)
            // return null;
            try {
                TaoBaoGoodsBrief goods = TaoKeApiUtil.getSimpleGoodsInfo(auctionId);
                shop.setId(goods.getSellerId());
                shop.setShopName(goods.getShopTitle());
                shop.setUserType(goods.getUserType());
            } catch (Exception e1) {
                shop.setId(1L);
                shop.setShopName("");
                shop.setUserType(0);
            }
            shop.setGoodRatePercentage(new BigDecimal(100));
            shop.setScoreGoods(new BigDecimal("4.9"));
            shop.setScoreGoodsD(new BigDecimal("0"));
            shop.setScoreSeller(new BigDecimal("4.9"));
            shop.setScoreSellerD(new BigDecimal("0"));
            shop.setScoreLogistics(new BigDecimal("4.9"));
            shop.setScoreLogisticsD(new BigDecimal("0"));
            shop.setSellerNick("");
            shop.setShopIcon("https:");
            shop.setShopLink(TaoBaoUtil.getShopLink(shop.getId()));
        }
        shop.setSellerNick(sellerJson.optString("sellerNick"));
        shop.setShopIcon("https:" + sellerJson.optString("shopIcon"));
        shop.setShopId(sellerJson.optLong("shopId"));
        shop.setShopName(sellerJson.optString("shopName"));
        if ("B".equalsIgnoreCase(sellerJson.optString("sellerType")))
            shop.setUserType(1);
        else
            shop.setUserType(0);
        shop.setShopLink(TaoBaoUtil.getShopLink(shop.getId()));
        return shop;
    }