From 1340beb67a9b6d777821d0139bcc7c9b0896ed4e Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期六, 05 九月 2020 10:59:26 +0800 Subject: [PATCH] 拼多多比价修改 --- fanli/src/main/java/com/yeshi/fanli/service/impl/order/CommonOrderServiceImpl.java | 151 ++++++++++++++++++++++++++++++++------------------ 1 files changed, 97 insertions(+), 54 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/order/CommonOrderServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/order/CommonOrderServiceImpl.java index 947a89f..6e21610 100644 --- a/fanli/src/main/java/com/yeshi/fanli/service/impl/order/CommonOrderServiceImpl.java +++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/order/CommonOrderServiceImpl.java @@ -2,16 +2,14 @@ import java.math.BigDecimal; import java.text.SimpleDateFormat; -import java.util.ArrayList; -import java.util.Date; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.util.*; import javax.annotation.Resource; import com.yeshi.fanli.entity.SystemEnum; +import com.yeshi.fanli.service.inter.order.pdd.PDDOrderService; import org.apache.commons.beanutils.PropertyUtils; +import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.yeshi.utils.DateUtil; @@ -161,6 +159,10 @@ @Resource private RocketMQManager rocketMQManager; + @Lazy + @Resource + private PDDOrderService pddOrderService; + // 濂栧姳璁㈠崟鍥剧墖 public final static String PIC_REWARD = "http://img.flqapp.com/resource/order/order_state_reward.png"; @@ -277,6 +279,25 @@ listPDD.add(commonOrderVO.getOrderNo()); } } + //鏌ヨ鎷煎澶氱殑璁㈠崟璇︽儏 + List<String> pddOrderSnList = new ArrayList<>(); + if (listPDD != null && listPDD.size() > 0) { + for (String orderSn : listPDD) + pddOrderSnList.add(orderSn); + } + List<PDDOrder> pddOrderList = pddOrderService.listByOrderSns(listPDD); + Set<String> bjOrders = new HashSet<>(); + if (pddOrderList != null) { + for (PDDOrder pdd : pddOrderList) + if (pdd.getFailReason() != null && pdd.getFailReason().contains("姣斾环")) + bjOrders.add(pdd.getOrderSn()); + } + for (CommonOrderVO commonOrderVO : listOrder) { + if (commonOrderVO.getSourceType() == Constant.SOURCE_TYPE_PDD && bjOrders.contains(commonOrderVO.getOrderNo())) { + commonOrderVO.setOrderStateDesc("姣斾环璁㈠崟"); + } + } + List<UserSystemCouponRecord> listRecordTB = null; if (listTB.size() > 0) { @@ -437,38 +458,43 @@ hongBao = new BigDecimal(0); } - if (CommonOrder.STATE_FK == orderState) { - orderStateContent = "宸蹭粯娆�"; - } else if (CommonOrder.STATE_JS == orderState) { - orderStateContent = "宸叉敹璐�"; - } else if (CommonOrder.STATE_SX == orderState) { - orderStateContent = "鏈粯娆�/宸查��娆�"; - } else if (CommonOrder.STATE_WQ == orderState) { - orderStateContent = "宸插敭鍚�"; - if (sourceType != null && sourceType == Constant.SOURCE_TYPE_TAOBAO) { - /* 璁㈠崟缁存潈 鍒ゆ柇鏄惁鍏ㄩ儴缁存潈 */ - List<TaoBaoWeiQuanOrder> listWQ = taoBaoWeiQuanOrderMapper - .selectListByOrderIdAndState(order.getOrderNo(), "缁存潈鎴愬姛"); + //鍒ゆ柇鐘舵�佹槸鍚﹂璁句簡鐨� + if (!StringUtil.isNullOrEmpty(order.getOrderStateDesc())) { + orderStateContent = order.getOrderStateDesc(); + } else { + if (CommonOrder.STATE_FK == orderState) { + orderStateContent = "宸蹭粯娆�"; + } else if (CommonOrder.STATE_JS == orderState) { + orderStateContent = "宸叉敹璐�"; + } else if (CommonOrder.STATE_SX == orderState) { + orderStateContent = "鏈粯娆�/宸查��娆�"; + } else if (CommonOrder.STATE_WQ == orderState) { + orderStateContent = "宸插敭鍚�"; + if (sourceType != null && sourceType == Constant.SOURCE_TYPE_TAOBAO) { + /* 璁㈠崟缁存潈 鍒ゆ柇鏄惁鍏ㄩ儴缁存潈 */ + List<TaoBaoWeiQuanOrder> listWQ = taoBaoWeiQuanOrderMapper + .selectListByOrderIdAndState(order.getOrderNo(), "缁存潈鎴愬姛"); - boolean isPart = false;// 榛樿澶辨晥 - BigDecimal weiQuanMoney = getWeiQuanMoney(listWQ, sourceType, uid); + boolean isPart = false;// 榛樿澶辨晥 + BigDecimal weiQuanMoney = getWeiQuanMoney(listWQ, sourceType, uid); - if (!VersionUtil.greaterThan_1_6_0(acceptData.getPlatform(), acceptData.getVersion())) { - if (isPart) { - hongBaoState = HongBaoV2.STATE_BUFENSHIXIAO; // 閮ㄥ垎澶辨晥 + if (!VersionUtil.greaterThan_1_6_0(acceptData.getPlatform(), acceptData.getVersion())) { + if (isPart) { + hongBaoState = HongBaoV2.STATE_BUFENSHIXIAO; // 閮ㄥ垎澶辨晥 + } else { + hongBaoState = HongBaoV2.STATE_SHIXIAO; // 鍏ㄩ儴澶辨晥 + } } else { - hongBaoState = HongBaoV2.STATE_SHIXIAO; // 鍏ㄩ儴澶辨晥 - } - } else { - // 2019.8.1 杩斿洖缁存潈淇℃伅 - if (settleTime != null && august != null && settleTime.getTime() > august.getTime()) { - orderStateContent = "鍞悗鎴愬姛"; - WeiQuanInfo weiQuanInfo = new WeiQuanInfo(); - weiQuanInfo.setOldHongBao("楼" + hongBao.setScale(2, BigDecimal.ROUND_DOWN).toString()); - weiQuanInfo - .setWqHongBao("鍞悗锛�-楼" + weiQuanMoney.setScale(2, BigDecimal.ROUND_DOWN).toString()); - hongBao = MoneyBigDecimalUtil.sub(hongBao, weiQuanMoney); - order.setWeiQuanInfo(weiQuanInfo); + // 2019.8.1 杩斿洖缁存潈淇℃伅 + if (settleTime != null && august != null && settleTime.getTime() > august.getTime()) { + orderStateContent = "鍞悗鎴愬姛"; + WeiQuanInfo weiQuanInfo = new WeiQuanInfo(); + weiQuanInfo.setOldHongBao("楼" + hongBao.setScale(2, BigDecimal.ROUND_DOWN).toString()); + weiQuanInfo + .setWqHongBao("鍞悗锛�-楼" + weiQuanMoney.setScale(2, BigDecimal.ROUND_DOWN).toString()); + hongBao = MoneyBigDecimalUtil.sub(hongBao, weiQuanMoney); + order.setWeiQuanInfo(weiQuanInfo); + } } } } @@ -2023,6 +2049,19 @@ listSuNing.add(order.getOrderNo()); } } + //鏌ヨ鎷煎澶氱殑璁㈠崟璇︽儏 + List<PDDOrder> pddOrderList = pddOrderService.listByOrderSns(listPDD); + Set<String> bjOrders = new HashSet<>(); + if (pddOrderList != null) { + for (PDDOrder pdd : pddOrderList) + if (pdd.getFailReason() != null && pdd.getFailReason().contains("姣斾环")) + bjOrders.add(pdd.getOrderSn()); + } + for (CommonOrderVO commonOrderVO : listOrder) { + if (commonOrderVO.getSourceType() == Constant.SOURCE_TYPE_PDD && bjOrders.contains(commonOrderVO.getOrderNo())) { + commonOrderVO.setOrderStateDesc("姣斾环璁㈠崟"); + } + } List<UserSystemCouponRecord> listRecordTB = null; if (listTB.size() > 0) { @@ -2189,28 +2228,32 @@ /* 璁㈠崟鐘舵�� 杞崲澶勭悊 */ String orderStateContent = ""; - if (CommonOrder.STATE_FK == orderState) { - orderStateContent = "宸蹭粯娆�"; - } else if (CommonOrder.STATE_JS == orderState) { - orderStateContent = "宸叉敹璐�"; - } else if (CommonOrder.STATE_SX == orderState) { - orderStateContent = "鏈粯娆�/宸查��娆�"; - } else if (CommonOrder.STATE_WQ == orderState) { - orderStateContent = "宸插敭鍚�"; - if (sourceType == Constant.SOURCE_TYPE_TAOBAO) { - /* 璁㈠崟缁存潈 鍒ゆ柇鏄惁鍏ㄩ儴缁存潈 */ - List<TaoBaoWeiQuanOrder> listWQ = taoBaoWeiQuanOrderMapper - .selectListByOrderIdAndState(order.getOrderNo(), "缁存潈鎴愬姛"); - BigDecimal weiQuanMoney = getWeiQuanMoney(listWQ, sourceType, uid); + if(!StringUtil.isNullOrEmpty(order.getOrderStateDesc())) + orderStateContent=order.getOrderStateDesc(); + else { + if (CommonOrder.STATE_FK == orderState) { + orderStateContent = "宸蹭粯娆�"; + } else if (CommonOrder.STATE_JS == orderState) { + orderStateContent = "宸叉敹璐�"; + } else if (CommonOrder.STATE_SX == orderState) { + orderStateContent = "鏈粯娆�/宸查��娆�"; + } else if (CommonOrder.STATE_WQ == orderState) { + orderStateContent = "宸插敭鍚�"; + if (sourceType == Constant.SOURCE_TYPE_TAOBAO) { + /* 璁㈠崟缁存潈 鍒ゆ柇鏄惁鍏ㄩ儴缁存潈 */ + List<TaoBaoWeiQuanOrder> listWQ = taoBaoWeiQuanOrderMapper + .selectListByOrderIdAndState(order.getOrderNo(), "缁存潈鎴愬姛"); + BigDecimal weiQuanMoney = getWeiQuanMoney(listWQ, sourceType, uid); - if (settleTime != null) { - orderStateContent = "鍞悗鎴愬姛"; - WeiQuanInfo weiQuanInfo = new WeiQuanInfo(); - weiQuanInfo.setOldHongBao("楼" + hongBao.setScale(2, BigDecimal.ROUND_DOWN).toString()); - weiQuanInfo.setWqHongBao("鍞悗锛�-楼" + weiQuanMoney.setScale(2, BigDecimal.ROUND_DOWN).toString()); - order.setWeiQuanInfo(weiQuanInfo); + if (settleTime != null) { + orderStateContent = "鍞悗鎴愬姛"; + WeiQuanInfo weiQuanInfo = new WeiQuanInfo(); + weiQuanInfo.setOldHongBao("楼" + hongBao.setScale(2, BigDecimal.ROUND_DOWN).toString()); + weiQuanInfo.setWqHongBao("鍞悗锛�-楼" + weiQuanMoney.setScale(2, BigDecimal.ROUND_DOWN).toString()); + order.setWeiQuanInfo(weiQuanInfo); + } + hongBao = MoneyBigDecimalUtil.sub(hongBao, weiQuanMoney); } - hongBao = MoneyBigDecimalUtil.sub(hongBao, weiQuanMoney); } } orderStateMap.put("content", orderStateContent); -- Gitblit v1.8.0