From 70ebe043e6b62756be9e257fe954c747d46568b9 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期五, 16 九月 2022 19:00:59 +0800 Subject: [PATCH] 商品ID字符串化 --- fanli/src/main/java/com/yeshi/fanli/service/impl/order/CommonOrderServiceImpl.java | 103 +++++++++++++++++++++++++++++++++++++++------------ 1 files changed, 78 insertions(+), 25 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 6e21610..6b2f0e1 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 @@ -9,6 +9,8 @@ import com.yeshi.fanli.entity.SystemEnum; import com.yeshi.fanli.service.inter.order.pdd.PDDOrderService; import org.apache.commons.beanutils.PropertyUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -104,6 +106,9 @@ @Service public class CommonOrderServiceImpl implements CommonOrderService { + + private Logger logger = LoggerFactory.getLogger(CommonOrderService.class); + @Resource private CommonOrderMapper commonOrderMapper; @@ -368,6 +373,8 @@ CommonOrderGoodsVO commonGoodsVO = new CommonOrderGoodsVO(); PropertyUtils.copyProperties(commonGoodsVO, goods); commonGoodsVO.setGoodsType(sourceType); + commonGoodsVO.setPlaceOrderTime(TimeUtil.getGernalTime(order.getThirdCreateTime().getTime(), "yyyy.MM.dd HH:mm")); + // 娣樺疂鍟嗗搧鍥剧墖澶勭悊 String picture = commonGoodsVO.getPicture(); @@ -384,6 +391,11 @@ if (totalSettlement == null || totalSettlement.compareTo(new BigDecimal(0)) <= 0) { totalSettlement = commonOrder.getTotalPayment(); } + if (totalSettlement == null || totalSettlement.compareTo(new BigDecimal(0)) <= 0) + commonGoodsVO.setPayState("鏈粯娆�/宸查��娆�"); + else + commonGoodsVO.setPayState("宸蹭粯娆�"); + commonGoodsVO.setActualPay("浠樻閲戦锛毬�" + totalSettlement); // 閭�璇疯鍗曚俊鎭繚鎶� @@ -721,7 +733,7 @@ Map<String, Object> jump = new HashMap<String, Object>(); jump.put("type", 1); // 椤甸潰璺宠浆 jump.put("params", jumpLink); - jump.put("jumpDetail", jumpDetailV2Service.getByTypeCache("freeCouponDetail")); + jump.put("jumpDetail", jumpDetailV2Service.getByTypeCache("freeCouponDetail", acceptData.getSystem())); Map<String, Object> rewardMap = new HashMap<String, Object>(); rewardMap.put("text", rewardStyleVO); @@ -750,7 +762,7 @@ Map<String, Object> jump = new HashMap<String, Object>(); jump.put("type", 1); // 1 甯歌璺宠浆椤甸潰 jump.put("params", jumpLink); - jump.put("jumpDetail", jumpDetailV2Service.getByTypeCache("rewardCouponDetail")); + jump.put("jumpDetail", jumpDetailV2Service.getByTypeCache("rewardCouponDetail", acceptData.getSystem())); rewardMap.put("jump", jump); order.setRewardDetail(rewardMap); } @@ -775,7 +787,7 @@ long limitDate = TimeUtil.convertDateToTemp(Constant.VIP_ONLINE_TIME); if (downOrderTime > limitDate) { // 2.1 寮�濮嬫柊鐗� - rewardCounponLimitTime(order, accountTime); + rewardCounponLimitTime(order, accountTime, acceptData.getSystem()); } else if (hasRewardCoupon) { // 鍦�2.1鏂扮増涓婄嚎涔嬪墠璁㈠崟-瀛樺湪鍒欐樉绀哄鍔卞埜鍙娇鐢� ClientTextStyleVO rewardStyleVO = new ClientTextStyleVO(); @@ -790,7 +802,7 @@ Map<String, Object> jump = new HashMap<String, Object>(); jump.put("type", 2); // 寮规 jump.put("params", jumpLink); - jump.put("jumpDetail", jumpDetailV2Service.getByTypeCache("rewardCouponDetail")); + jump.put("jumpDetail", jumpDetailV2Service.getByTypeCache("rewardCouponDetail", acceptData.getSystem())); Map<String, Object> rewardMap = new HashMap<String, Object>(); rewardMap.put("text", rewardStyleVO); @@ -800,7 +812,7 @@ } } - private void rewardCounponLimitTime(CommonOrderVO order, Date accountTime) throws Exception { + private void rewardCounponLimitTime(CommonOrderVO order, Date accountTime, SystemEnum system) throws Exception { // 鍊掕鏃堕獙璇� Date endDay = DateUtil.plusDayDate(Constant.COUPON_REWARD_LIMIT_DAY, accountTime); long currentTime = java.lang.System.currentTimeMillis(); @@ -875,7 +887,7 @@ Map<String, Object> jump = new HashMap<String, Object>(); jump.put("type", 2); // 寮瑰嚭妗嗕娇鐢ㄥ埜 jump.put("params", jumpLink); - jump.put("jumpDetail", jumpDetailV2Service.getByTypeCache("rewardCouponDetail")); + jump.put("jumpDetail", jumpDetailV2Service.getByTypeCache("rewardCouponDetail", system)); rewardMap.put("jump", jump); order.setRewardDetail(rewardMap); } @@ -1004,11 +1016,10 @@ taoBaoGoods.getRootCategoryName(), taoBaoGoods.getLeafName())); } catch (TaobaoGoodsDownException e) { e.printStackTrace(); - LogHelper.errorDetailInfo(e, "AUCTIONID:" + taoBaoOrder.getAuctionId(), ""); + logger.warn("娣樺疂鍟嗗搧涓嬫灦锛歿}", taoBaoOrder.getAuctionId(), e); try { taoBaoGoods = TaoBaoUtil.getSimpleGoodsBrief(taoBaoOrder.getAuctionId()); // 璁板綍鍟嗗搧鍒嗙被 - } catch (Exception e1) { CommonGoods commonGoods = commonGoodsService.getCommonGoodsByGoodsIdAndGoodsType( taoBaoOrder.getAuctionId(), Constant.SOURCE_TYPE_TAOBAO); @@ -1293,7 +1304,7 @@ { SuningGoodsInfo pddGoods = null; // TODO 闇�瑕佽幏鍙� - pddGoods = SuningApiUtil.getGoodsDetail(suningOrderInfo.getGoodsNum(), suningOrderInfo.getSellerCode()); + pddGoods = SuningApiUtil.getGoodsDetail(suningOrderInfo.getGoodsNum(), "0000000000"); if (pddGoods != null) { cog = CommonOrderGoodsFactory.create(pddGoods); } @@ -1308,6 +1319,30 @@ } addConfirmMQMsg(commonOrderList); return commonOrderList; + } + + private boolean needUpdateCommonOrder(CommonOrder oldCommonOrder, CommonOrder newCommonOrder) { + // 闈炰含涓滃凡缁忕粨绠楋紝宸茬粡澶辨晥锛岀姸鎬佹湭鏀瑰彉鐨勮鍗曚笉澶勭悊 + if ((oldCommonOrder.getState() == CommonOrder.STATE_JS + && oldCommonOrder.getSourceType() != Constant.SOURCE_TYPE_JD) + || oldCommonOrder.getState() == CommonOrder.STATE_SX + || oldCommonOrder.getState() == CommonOrder.STATE_WQ) { + return false; + } + + + //鐘舵�佺浉鍚屼笖浠樻閲戦锛岀粨绠楅噾棰濅竴鑷存椂鎵嶄笉闇�瑕佹洿鏂� + if (oldCommonOrder.getState().intValue() == newCommonOrder.getState()) { + if (oldCommonOrder.getPayment().compareTo(newCommonOrder.getPayment()) == 0) { + if (oldCommonOrder.getSettlement() == null && newCommonOrder.getSettlement() == null) { + return false; + } else if (oldCommonOrder.getSettlement() != null && newCommonOrder.getSettlement() != null && oldCommonOrder.getSettlement().compareTo(newCommonOrder.getSettlement()) == 0) { + return false; + } + } + } + + return true; } /** @@ -1371,12 +1406,8 @@ commonOrder.getTradeId(), new Date(), commonOrder.getSourceType())); return new CommonOrderAddResultDTO(commonOrder, CommonOrderAddResultDTO.TYPE_ADD); } else {// 淇敼 - // 闈炰含涓滃凡缁忕粨绠楋紝宸茬粡澶辨晥锛岀姸鎬佹湭鏀瑰彉鐨勮鍗曚笉澶勭悊 - if ((oldCommonOrder.getState() == CommonOrder.STATE_JS - && oldCommonOrder.getSourceType() != Constant.SOURCE_TYPE_JD) - || oldCommonOrder.getState() == CommonOrder.STATE_SX - || oldCommonOrder.getState() == CommonOrder.STATE_WQ - || (oldCommonOrder.getState().intValue() == commonOrder.getState())) { + + if (!needUpdateCommonOrder(oldCommonOrder, commonOrder)) { return new CommonOrderAddResultDTO(oldCommonOrder, CommonOrderAddResultDTO.TYPE_NOUPDATE); } // 浜ゆ槗ID涓�鑷存墠淇敼 @@ -1489,16 +1520,16 @@ @Override public List<CommonOrderVO> listQuery(long start, int count, Integer keyType, String key, Integer state, - Integer type, Integer orderState, String startTime, String endTime, Integer source, List<Long> listShopId, + List<Integer> typeList, Integer orderState, String startTime, String endTime, Integer source, List<Long> listShopId, List<Long> listGoodsId, Date minTime, BigDecimal money, BigDecimal payment, SystemEnum system) throws CommonOrderException { List<CommonOrderVO> list = null; if (StringUtil.isNullOrEmpty(key) || keyType == 1) {// 鎼滅储妗嗘棤鍊兼垨鑰呮寜璁㈠崟鍙锋悳绱㈡椂閮藉彧鎼滅储涓昏鍗� - list = commonOrderMapper.listQueryWithNoChild(start, count, keyType, key, state, type, orderState, + list = commonOrderMapper.listQueryWithNoChild(start, count, keyType, key, state, typeList, orderState, startTime, endTime, source, payment, system); } else { - list = commonOrderMapper.listQuery(start, count, keyType, key, state, type, orderState, startTime, endTime, + list = commonOrderMapper.listQuery(start, count, keyType, key, state, typeList, orderState, startTime, endTime, source, listShopId, listGoodsId, minTime, money, payment, system); } @@ -1684,14 +1715,14 @@ } @Override - public long countQuery(Integer keyType, String key, Integer state, Integer type, Integer orderState, + public long countQuery(Integer keyType, String key, Integer state, List<Integer> typeList, Integer orderState, String startTime, String endTime, Integer source, List<Long> listShopId, List<Long> listGoodsId, Date minTime, BigDecimal money, BigDecimal payment, SystemEnum system) throws CommonOrderException { if (StringUtil.isNullOrEmpty(key) || keyType == 1) {// 鎼滅储妗嗘棤鍊兼垨鑰呮寜璁㈠崟鍙锋悳绱㈡椂閮藉彧鎼滅储涓昏鍗� - return commonOrderMapper.countQueryWithNoChild(keyType, key, state, type, orderState, startTime, endTime, + return commonOrderMapper.countQueryWithNoChild(keyType, key, state, typeList, orderState, startTime, endTime, source, payment, system); } else { - return commonOrderMapper.countQuery(keyType, key, state, type, orderState, startTime, endTime, source, + return commonOrderMapper.countQuery(keyType, key, state, typeList, orderState, startTime, endTime, source, listShopId, listGoodsId, minTime, money, payment, system); } } @@ -1745,6 +1776,7 @@ } catch (Exception e) { e.printStackTrace(); } + commonGoodsVO.setPlaceOrderTime(TimeUtil.getGernalTime(commonOrder.getThirdCreateTime().getTime(), "yyyy.MM.dd HH:mm")); String picture = commonGoodsVO.getPicture(); if (!StringUtil.isNullOrEmpty(picture) && !picture.contains("320x320")) { @@ -1771,6 +1803,10 @@ if (totalSettlement == null || totalSettlement.compareTo(new BigDecimal(0)) <= 0) { totalSettlement = commonOrder.getTotalPayment(); } + if (totalSettlement == null || totalSettlement.compareTo(new BigDecimal(0)) <= 0) + commonGoodsVO.setPayState("鏈粯娆�/宸查��娆�"); + else + commonGoodsVO.setPayState("宸蹭粯娆�"); // 瀹炰粯娆� commonGoodsVO.setActualPay("浠樻閲戦锛毬�" + totalSettlement); @@ -1794,7 +1830,7 @@ } @Override - public JSONObject getRewardJumpInfo(String orderNo, Integer goodsType) { + public JSONObject getRewardJumpInfo(String orderNo, Integer goodsType, SystemEnum system) { JSONObject map = new JSONObject(); // 璁㈠崟鏍囪瘑 @@ -1816,7 +1852,7 @@ Map<String, Object> jump = new HashMap<String, Object>(); jump.put("type", 1); jump.put("params", jumpLink); - jump.put("jumpDetail", jumpDetailV2Service.getByTypeCache("rewardCouponDetail")); + jump.put("jumpDetail", jumpDetailV2Service.getByTypeCache("rewardCouponDetail", system)); Map<String, Object> rewardMap = new HashMap<String, Object>(); rewardMap.put("text", rewardStyleVO); @@ -2110,6 +2146,7 @@ if (commonGoodsVO.getGoodsType() == null) { commonGoodsVO.setGoodsType(sourceType); } + commonGoodsVO.setPlaceOrderTime(TimeUtil.getGernalTime(order.getThirdCreateTime().getTime(), "yyyy.MM.dd HH:mm")); // 娣樺疂鍟嗗搧鍥剧墖澶勭悊 String picture = commonGoodsVO.getPicture(); @@ -2126,6 +2163,11 @@ if (totalSettlement == null || totalSettlement.compareTo(new BigDecimal(0)) <= 0) { totalSettlement = commonOrder.getTotalPayment(); } + if (totalSettlement == null || totalSettlement.compareTo(new BigDecimal(0)) <= 0) + commonGoodsVO.setPayState("鏈粯娆�/宸查��娆�"); + else + commonGoodsVO.setPayState("宸蹭粯娆�"); + commonGoodsVO.setActualPay("浠樻閲戦锛毬�" + totalSettlement); // 閭�璇疯鍗曚俊鎭繚鎶� @@ -2228,8 +2270,8 @@ /* 璁㈠崟鐘舵�� 杞崲澶勭悊 */ String orderStateContent = ""; - if(!StringUtil.isNullOrEmpty(order.getOrderStateDesc())) - orderStateContent=order.getOrderStateDesc(); + if (!StringUtil.isNullOrEmpty(order.getOrderStateDesc())) + orderStateContent = order.getOrderStateDesc(); else { if (CommonOrder.STATE_FK == orderState) { orderStateContent = "宸蹭粯娆�"; @@ -2431,4 +2473,15 @@ return commonOrderMapper.listByGoodsIdAndUidAndMinThirdCreateTime(goodsId, uid, minThirdCreateTime, 0, 1000); } + @Override + public List<CommonOrder> listPayStateOrder(int sourceType, Date minThirdCreateTime, Date maxThirdCreateTime) { + CommonOrderMapper.DaoQuery daoQuery = new CommonOrderMapper.DaoQuery(); + daoQuery.minThirdCreateTime = minThirdCreateTime; + daoQuery.maxThirdCreateTime = maxThirdCreateTime; + daoQuery.state = CommonOrder.STATE_FK; + daoQuery.sourceType = sourceType; + daoQuery.sortList = Arrays.asList(new String[]{"co_third_create_time ASC"}); + return commonOrderMapper.list(daoQuery, 0, 200); + } + } -- Gitblit v1.8.0