From 5e7b0ed4a154ad067cbcf4aa1a1c7cce32f9864c Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期五, 26 四月 2024 18:02:17 +0800 Subject: [PATCH] 唯品会链接解析升级 --- fanli/src/main/java/com/yeshi/fanli/service/impl/order/CommonOrderServiceImpl.java | 305 +++++++++++++++++++++++++++++++++++++------------- 1 files changed, 227 insertions(+), 78 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..80381e5 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,19 @@ 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.entity.dy.DYOrder; +import com.yeshi.fanli.service.inter.order.pdd.PDDOrderService; +import com.yeshi.fanli.util.goods.douyin.CSJCPSApiUtil; +import com.yeshi.fanli.util.goods.douyin.vo.DYGoodsDetail; 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; import org.yeshi.utils.DateUtil; @@ -107,6 +110,9 @@ @Service public class CommonOrderServiceImpl implements CommonOrderService { + private Logger logger = LoggerFactory.getLogger(CommonOrderService.class); + + @Resource private CommonOrderMapper commonOrderMapper; @@ -160,6 +166,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 +287,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) { @@ -347,6 +376,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(); @@ -363,6 +394,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); // 閭�璇疯鍗曚俊鎭繚鎶� @@ -437,38 +473,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); + } } } } @@ -695,7 +736,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); @@ -724,7 +765,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); } @@ -749,7 +790,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(); @@ -764,7 +805,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); @@ -774,7 +815,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(); @@ -849,7 +890,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); } @@ -961,6 +1002,7 @@ } else { cog.setGoodsId(taoBaoOrder.getAuctionId() + ""); cog.setGoodsType(Constant.SOURCE_TYPE_TAOBAO); + cog.setTitle(taoBaoOrder.getTitle()); newCommonOrder.setCommonOrderGoods(cog); } newCommonOrder.setStateWholeOrder(wholeOrderState); @@ -978,11 +1020,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); @@ -996,6 +1037,8 @@ } cog.setCreateTime(new Date()); cog.setUpdateTime(new Date()); + //瑕嗙洊鍘熸潵鐨勫晢鍝両D + cog.setGoodsId(newCommonOrder.getCommonOrderGoods().getGoodsId()); commonOrderGoodsMapper.insertSelective(cog); } newCommonOrder.setUserInfo(new UserInfo(uid)); @@ -1267,7 +1310,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); } @@ -1282,6 +1325,71 @@ } addConfirmMQMsg(commonOrderList); return commonOrderList; + } + + @Override + public List<CommonOrderAddResultDTO> addDYOrder(DYOrder order, Long uid) throws CommonOrderException { + List<CommonOrderAddResultDTO> commonOrderList = new ArrayList<>(); + + CommonOrder newCommonOrder = CommonOrderFactory.create(order); + CommonOrderGoods cog = new CommonOrderGoods(); + cog.setGoodsId(order.getProduct_id()); + cog.setGoodsType(Constant.SOURCE_TYPE_DY); + newCommonOrder.setCommonOrderGoods(cog); + newCommonOrder.setStateWholeOrder(newCommonOrder.getState()); + // 璁㈠崟鍟嗗搧鎻掑叆 + List<CommonOrderGoods> commonGoodsList = commonOrderGoodsMapper.listByGoodsIdAndGoodsType(cog.getGoodsId(), + cog.getGoodsType()); + if (commonGoodsList.size() <= 0)// 涓嶅瓨鍦ㄥ氨鎻掑叆鍟嗗搧 + { + DYGoodsDetail goods = CSJCPSApiUtil.goodsDetail(Long.parseLong(order.getProduct_id())); + if (goods == null) { + goods = new DYGoodsDetail(); + goods.setTitle(order.getProduct_name()); + goods.setPrice(0); + goods.setProduct_id(Long.parseLong(order.getProduct_id())); + goods.setCover(order.getProduct_img()); + } + + if (goods != null) { + cog = CommonOrderGoodsFactory.create(goods); + } + + cog.setCreateTime(new Date()); + cog.setUpdateTime(new Date()); + commonOrderGoodsMapper.insertSelective(cog); + } else { + + } + newCommonOrder.setUserInfo(new UserInfo(uid)); + commonOrderList.add(addCommonOrder(newCommonOrder)); + + 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; } /** @@ -1345,12 +1453,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涓�鑷存墠淇敼 @@ -1463,16 +1567,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); } @@ -1658,14 +1762,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); } } @@ -1719,6 +1823,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")) { @@ -1745,6 +1850,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); @@ -1768,7 +1877,7 @@ } @Override - public JSONObject getRewardJumpInfo(String orderNo, Integer goodsType) { + public JSONObject getRewardJumpInfo(String orderNo, Integer goodsType, SystemEnum system) { JSONObject map = new JSONObject(); // 璁㈠崟鏍囪瘑 @@ -1790,7 +1899,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); @@ -1847,7 +1956,13 @@ @Override public List<CommonOrder> getByOrderNo(Long uid, String orderNO) { - return commonOrderMapper.getByOrderNo(uid, orderNO); + if(uid!=null) { + return commonOrderMapper.getByOrderNo(uid, orderNO); + }else{ + CommonOrderMapper.DaoQuery daoQuery=new CommonOrderMapper.DaoQuery(); + daoQuery.orderId = orderNO; + return commonOrderMapper.list(daoQuery,0,100); + } } @@ -2023,6 +2138,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) { @@ -2071,6 +2199,7 @@ if (commonGoodsVO.getGoodsType() == null) { commonGoodsVO.setGoodsType(sourceType); } + commonGoodsVO.setPlaceOrderTime(TimeUtil.getGernalTime(order.getThirdCreateTime().getTime(), "yyyy.MM.dd HH:mm")); // 娣樺疂鍟嗗搧鍥剧墖澶勭悊 String picture = commonGoodsVO.getPicture(); @@ -2087,6 +2216,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); // 閭�璇疯鍗曚俊鎭繚鎶� @@ -2189,28 +2323,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); @@ -2388,4 +2526,15 @@ return commonOrderMapper.listByGoodsIdAndUidAndMinThirdCreateTime(goodsId, uid, minThirdCreateTime, 0, 1000); } + @Override + public List<CommonOrder> listPayStateOrder(Integer sourceType, Date minThirdCreateTime, Date maxThirdCreateTime,int page,int pageSize) { + 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, (page-1)*pageSize, pageSize); + } + } -- Gitblit v1.8.0