From c6116e2b629c94a088b49cddb157a897970fd543 Mon Sep 17 00:00:00 2001
From: yujian <yujian@123.com>
Date: 星期三, 04 九月 2019 10:38:19 +0800
Subject: [PATCH] 邀请激活 + 兑换活动校验是否结束
---
fanli/src/main/java/com/yeshi/fanli/service/impl/order/CommonOrderServiceImpl.java | 312 ++++++++++++++++++++++++++++++++++++----------------
1 files changed, 216 insertions(+), 96 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 15d76b2..466e8d9 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
@@ -1,6 +1,7 @@
package com.yeshi.fanli.service.impl.order;
import java.math.BigDecimal;
+import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
@@ -52,9 +53,13 @@
import com.yeshi.fanli.util.Constant;
import com.yeshi.fanli.util.MoneyBigDecimalUtil;
import com.yeshi.fanli.util.StringUtil;
+import com.yeshi.fanli.util.TimeUtil;
+import com.yeshi.fanli.util.VersionUtil;
+import com.yeshi.fanli.util.account.UserUtil;
import com.yeshi.fanli.util.factory.CommonOrderGoodsFactory;
import com.yeshi.fanli.util.factory.goods.CommonOrderFactory;
import com.yeshi.fanli.util.jd.JDApiUtil;
+import com.yeshi.fanli.util.jd.JDUtil;
import com.yeshi.fanli.util.pinduoduo.PinDuoDuoApiUtil;
import com.yeshi.fanli.util.taobao.TaoBaoOrderUtil;
import com.yeshi.fanli.util.taobao.TaoBaoUtil;
@@ -62,6 +67,7 @@
import com.yeshi.fanli.vo.msg.ClientTextStyleVO;
import com.yeshi.fanli.vo.order.CommonOrderGoodsVO;
import com.yeshi.fanli.vo.order.CommonOrderVO;
+import com.yeshi.fanli.vo.order.WeiQuanInfo;
import net.sf.json.JSONObject;
@@ -153,12 +159,14 @@
@Override
public long countGroupOrderNoByUid(Long uid, Integer state, Integer type, Integer orderState, String orderNo,
String startTime, String endTime, Integer dateType, Integer source) throws CommonOrderException {
- return commonOrderMapper.countUserOrder(uid, state, type, orderState, orderNo, startTime, endTime, dateType, source);
+ return commonOrderMapper.countUserOrder(uid, state, type, orderState, orderNo, startTime, endTime, dateType,
+ source);
}
@Override
- public List<CommonOrderVO> getOrderByUid(AcceptData acceptData,Integer page, Long uid, Integer state, Integer type, Integer orderState,
- String orderNo, String startTime, String endTime, Integer dateType, Integer source) throws CommonOrderException {
+ public List<CommonOrderVO> getOrderByUid(AcceptData acceptData, Integer page, Long uid, Integer state, Integer type,
+ Integer orderState, String orderNo, String startTime, String endTime, Integer dateType, Integer source)
+ throws CommonOrderException {
int pageSize = Constant.PAGE_SIZE;
@@ -190,19 +198,21 @@
}
@Override
- public long countBonusOrderNumber(Long uid, Integer type, Integer day, String startTime, String endTime, Integer source) {
+ public long countBonusOrderNumber(Long uid, Integer type, Integer day, String startTime, String endTime,
+ Integer source) {
return commonOrderMapper.countBonusOrderNumber(uid, type, day, startTime, endTime, source);
}
@Override
- public BigDecimal countBonusOrderMoney(Long uid, Integer type, Integer day, String startTime, String endTime, Integer source) {
+ public BigDecimal countBonusOrderMoney(Long uid, Integer type, Integer day, String startTime, String endTime,
+ Integer source) {
return commonOrderMapper.countBonusOrderMoney(uid, type, day, startTime, endTime, source);
}
@Override
public Map<String, Object> countBonusOrderMoneyAndNumber(Long uid, Integer type, Integer day, String startTime,
- String endTime) {
- return commonOrderMapper.countBonusOrderMoneyAndNumber(uid, type, day, startTime, endTime);
+ String endTime, Integer source) {
+ return commonOrderMapper.countBonusOrderMoneyAndNumber(uid, type, day, startTime, endTime, source);
}
@Override
@@ -211,7 +221,34 @@
return commonOrderMapper.countByUidAndOrderState(uid, type, startTime, endTime, day, source);
}
- public void listDataFactory(AcceptData acceptData, List<CommonOrderVO> listOrder, List<CommonOrderVO> listGoods, Long uid) {
+ private BigDecimal getWeiQuanMoney(List<TaoBaoWeiQuanOrder> listWQ, int sourceType, Long uid) {
+ BigDecimal weiQuanMoney = new BigDecimal(0);
+ if (listWQ != null && listWQ.size() > 0) {
+ for (TaoBaoWeiQuanOrder weiQuanOrder : listWQ) {
+ String tradeId = weiQuanOrder.getOrderItemId();
+ // 鏌ヨ绾㈠寘
+ List<String> tradeList = new ArrayList<>();
+ tradeList.add(tradeId);
+ List<HongBaoV2> hongBaoList = hongBaoV2Service.listBySourceTypeAndTradeIdListAndUid(sourceType, uid,
+ tradeList);
+ if (hongBaoList != null && hongBaoList.size() > 0) {
+ CommonOrder commonOrder = commonOrderMapper.selectBySourceTypeAndTradeId(sourceType, tradeId);
+ if (commonOrder != null && commonOrder.getSettlement().compareTo(new BigDecimal(0)) > 0) {
+ BigDecimal wqMoney = MoneyBigDecimalUtil
+ .mul(hongBaoList.get(0).getMoney(), weiQuanOrder.getMoney())
+ .divide(commonOrder.getSettlement(), 2, BigDecimal.ROUND_UP);
+ if (wqMoney.compareTo(hongBaoList.get(0).getMoney()) > 0)
+ wqMoney = hongBaoList.get(0).getMoney();
+ weiQuanMoney = weiQuanMoney.add(wqMoney);
+ }
+ }
+ }
+ }
+ return weiQuanMoney;
+ }
+
+ public void listDataFactory(AcceptData acceptData, List<CommonOrderVO> listOrder, List<CommonOrderVO> listGoods,
+ Long uid) {
List<String> listTB = new ArrayList<String>();
List<String> listJD = new ArrayList<String>();
@@ -233,17 +270,17 @@
if (listTB.size() > 0) {
listRecordTB = userSystemCouponRecordService.getRecordByOrderNoList(Constant.SOURCE_TYPE_TAOBAO, listTB);
}
-
- List<UserSystemCouponRecord> listRecordJD = null;
+
+ List<UserSystemCouponRecord> listRecordJD = null;
if (listJD.size() > 0) {
listRecordJD = userSystemCouponRecordService.getRecordByOrderNoList(Constant.SOURCE_TYPE_JD, listJD);
}
-
+
List<UserSystemCouponRecord> listRecordPDD = null;
if (listPDD.size() > 0) {
listRecordPDD = userSystemCouponRecordService.getRecordByOrderNoList(Constant.SOURCE_TYPE_PDD, listPDD);
}
-
+
/* 缁勫悎鍟嗗搧淇℃伅 */
for (CommonOrderVO commonOrder : listGoods) {
CommonOrderGoods goods = commonOrder.getCommonOrderGoods();
@@ -268,6 +305,8 @@
} catch (Exception e) {
e.printStackTrace();
}
+
+ commonGoodsVO.setGoodsType(sourceType2);
String picture = commonGoodsVO.getPicture();
if (!StringUtil.isNullOrEmpty(picture) && !picture.contains("320x320")) {
@@ -297,8 +336,6 @@
// 瀹炰粯娆�
commonGoodsVO.setActualPay("浠樻閲戦锛毬�" + totalSettlement);
- listOrderGoods.add(commonGoodsVO);
-
Integer orderType = order.getOrderType();
if (orderType == null) {
String shopType = commonGoodsVO.getShopType();
@@ -306,15 +343,9 @@
order.setOrderType(1);
} else if (CommonOrderGoodsVO.TYPE_TMALL.equalsIgnoreCase(shopType)) {
order.setOrderType(2);
- }
-
- if (Constant.SOURCE_TYPE_JD == sourceType2) {
- order.setOrderType(3);
- } else if (Constant.SOURCE_TYPE_PDD == sourceType2) {
- order.setOrderType(4);
}
}
-
+ listOrderGoods.add(commonGoodsVO);
break;
}
}
@@ -324,7 +355,18 @@
SimpleDateFormat formatday = new SimpleDateFormat("yyyy.MM.dd");
// 鏄惁瀛樺湪濂栧姳鍒�
- boolean hasRewardCoupon = userSystemCouponService.hasRewardCoupon(uid);
+ // boolean hasRewardCoupon =
+ // userSystemCouponService.hasRewardCoupon(uid);
+ boolean hasRewardCoupon = userSystemCouponService.getIncludeNotExchange(uid);
+ boolean exchangeCoupon = userSystemCouponService.getIncludeExchange(uid);
+
+ // 2019.8.1寮�濮嬭繑鍥炵淮鏉冧俊鎭�
+ Date august = null;
+ try {
+ august = TimeUtil.parse("2019-08-01");
+ } catch (ParseException e) {
+ e.printStackTrace();
+ }
/* 缁勭粐璁㈠崟鐘舵�� 绛変俊鎭� */
for (CommonOrderVO order : listOrder) {
@@ -338,6 +380,18 @@
Date settleTime = order.getSettleTime();
if (settleTime != null) {
order.setReceiveTime("鏀惰揣鏃堕棿锛�" + format.format(settleTime));
+ }
+
+ Integer sourceType2 = order.getSourceType();
+ if (sourceType2 == Constant.SOURCE_TYPE_TAOBAO) {
+ Integer orderType = order.getOrderType();
+ if (orderType == null) {
+ order.setOrderType(1);
+ }
+ } else if (sourceType2 == Constant.SOURCE_TYPE_JD) {
+ order.setOrderType(3);
+ } else if (sourceType2 == Constant.SOURCE_TYPE_PDD) {
+ order.setOrderType(4);
}
/* 璁㈠崟鐘舵�� 杞崲澶勭悊 */
@@ -361,6 +415,11 @@
}
}
+ BigDecimal hongBao = order.getHongBao();
+ if (hongBao == null) {
+ hongBao = new BigDecimal(0);
+ }
+
if (CommonOrder.STATE_FK == orderState) {
orderStateContent = "宸蹭粯娆�";
} else if (CommonOrder.STATE_JS == orderState) {
@@ -377,25 +436,33 @@
.selectListByOrderIdAndState(order.getOrderNo(), "缁存潈鎴愬姛");
boolean isPart = false;// 榛樿澶辨晥
+ BigDecimal weiQuanMoney = getWeiQuanMoney(listWQ, sourceType, uid);
- if (listWQ != null && listWQ.size() > 0) {
- BigDecimal fanTotalMoney = new BigDecimal(0);
- for (TaoBaoWeiQuanOrder weiQuanOrder : listWQ) {
- BigDecimal fanMoney = weiQuanOrder.getFanMoney();
- if (fanMoney != null) {
- fanTotalMoney = MoneyBigDecimalUtil.add(fanTotalMoney, fanMoney);
- }
+ if (!VersionUtil.greaterThan_1_6_0(acceptData.getPlatform(), acceptData.getVersion())) {
+ if (isPart) {
+ hongBaoState = HongBaoV2.STATE_BUFENSHIXIAO; // 閮ㄥ垎澶辨晥
+ } else {
+ hongBaoState = HongBaoV2.STATE_SHIXIAO; // 鍏ㄩ儴澶辨晥
}
-
- if (fanTotalMoney.compareTo(order.getHongBao()) < 0) {
- isPart = true;
- }
- }
-
- if (isPart) {
- hongBaoState = HongBaoV2.STATE_BUFENSHIXIAO; // 閮ㄥ垎澶辨晥
} else {
- hongBaoState = HongBaoV2.STATE_SHIXIAO; // 鍏ㄩ儴澶辨晥
+ // 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());
+ // if (isPart) {
+ weiQuanInfo
+ .setWqHongBao("缁存潈锛�-楼" + weiQuanMoney.setScale(2, BigDecimal.ROUND_DOWN).toString());
+ hongBao = MoneyBigDecimalUtil.sub(hongBao, weiQuanMoney);
+ // } else {
+ // weiQuanInfo
+ // .setWqHongBao("缁存潈锛�-楼" + weiQuanMoney.setScale(2,
+ // BigDecimal.ROUND_DOWN).toString());
+ // hongBao = MoneyBigDecimalUtil.sub(hongBao,
+ // weiQuanMoney);
+ // }
+ order.setWeiQuanInfo(weiQuanInfo);
+ }
}
}
}
@@ -482,58 +549,53 @@
hongbaoInfo = hongBaoState_Str + hongbaoInfo;
- BigDecimal hongBao = order.getHongBao();
- if (hongBao == null) {
- hongBao = new BigDecimal(0);
- }
Map<String, String> hongBaoMap = new HashMap<String, String>();
hongBaoMap.put("content", hongbaoInfo + " 楼" + hongBao.setScale(2, BigDecimal.ROUND_DOWN).toString());
hongBaoMap.put("fontColor", hongbaoInfoFontColor);
order.setHongBaoInfo(hongBaoMap);
+ Integer sourceType = order.getSourceType();
// 闈炶嚜璐殑璁㈠崟 涓嶆樉绀鸿繑鍒┿�佸厤鍗曡鎯�
if (HongBaoV2.TYPE_ZIGOU != hongBaoType) {
order.setSignList(signList);
} else {
- Integer sourceType = order.getSourceType();
// 濂栧姳璁㈠崟銆佸厤鍗� 浣跨敤璁板綍
if (sourceType == null) {
- setSystemCouponRecord(order, hasRewardCoupon, hongBaoState, hongBaoType, null, signList);
+ setSystemCouponRecord(order, hasRewardCoupon, exchangeCoupon, hongBaoState, hongBaoType, null,
+ signList, acceptData);
} else if (sourceType == Constant.SOURCE_TYPE_TAOBAO) {
- setSystemCouponRecord(order, hasRewardCoupon, hongBaoState, hongBaoType, listRecordTB, signList);
+ setSystemCouponRecord(order, hasRewardCoupon, exchangeCoupon, hongBaoState, hongBaoType,
+ listRecordTB, signList, acceptData);
} else if (sourceType == Constant.SOURCE_TYPE_JD) {
- setSystemCouponRecord(order, hasRewardCoupon, hongBaoState, hongBaoType, listRecordJD, signList);
+ setSystemCouponRecord(order, hasRewardCoupon, exchangeCoupon, hongBaoState, hongBaoType,
+ listRecordJD, signList, acceptData);
} else if (sourceType == Constant.SOURCE_TYPE_PDD) {
- setSystemCouponRecord(order, hasRewardCoupon, hongBaoState, hongBaoType, listRecordPDD, signList);
+ setSystemCouponRecord(order, hasRewardCoupon, exchangeCoupon, hongBaoState, hongBaoType,
+ listRecordPDD, signList, acceptData);
}
}
-
- // 閭�璇� 闅愯棌璁㈠崟鍙�
- if (HongBaoV2.TYPE_SHARE_GOODS == hongBaoType) {
- String orderNo = order.getOrderNo();
- orderNo = orderNo.substring(0, orderNo.length()-6);
- order.setOrderNo(orderNo + "******");
- } else if (HongBaoV2.TYPE_YAOQING == hongBaoType || HongBaoV2.TYPE_YIJI == hongBaoType
- || HongBaoV2.TYPE_ERJI == hongBaoType || HongBaoV2.TYPE_SHARE_YIJI == hongBaoType
- || HongBaoV2.TYPE_SHARE_ERJI == hongBaoType) {
- String orderNo = order.getOrderNo();
- orderNo = orderNo.substring(0, orderNo.length()-6);
- order.setOrderNo(orderNo + "******");
+
+ // 鍒嗕韩銆侀個璇� 闅愯棌璁㈠崟鍙�
+ if (HongBaoV2.TYPE_SHARE_GOODS == hongBaoType || HongBaoV2.TYPE_YAOQING == hongBaoType
+ || HongBaoV2.TYPE_YIJI == hongBaoType || HongBaoV2.TYPE_ERJI == hongBaoType
+ || HongBaoV2.TYPE_SHARE_YIJI == hongBaoType || HongBaoV2.TYPE_SHARE_ERJI == hongBaoType) {
+ order.setOrderNo(UserUtil.filterOrderId(order.getOrderNo()));
}
}
}
-
-
+
/**
- * 璁㈠崟锛� 鍏嶅崟鏍囪瘑 濂栧姳鏍囪瘑
+ * 璁㈠崟锛� 鍏嶅崟鏍囪瘑 濂栧姳鏍囪瘑
+ *
* @param order
* @param hasRewardCoupon
* @param hongBaoState
* @param list
* @param signList
*/
- public void setSystemCouponRecord(CommonOrderVO order, boolean hasRewardCoupon, Integer hongBaoState, Integer hongBaoType,
- List<UserSystemCouponRecord> list, List<String> signList) {
+ public void setSystemCouponRecord(CommonOrderVO order, boolean hasRewardCoupon, boolean exchangeCoupon,
+ Integer hongBaoState, Integer hongBaoType, List<UserSystemCouponRecord> list, List<String> signList,
+ AcceptData acceptData) {
// 鏄惁鍏嶅崟鍟嗗搧
boolean freeOrder = false;
@@ -553,7 +615,8 @@
signList.add(PIC_REWARD); // 鍔犲叆濂栧姳鎴愬姛鍥剧墖
} else if (CouponTypeEnum.freeCoupon.name().equals(systemCouponType)
- || CouponTypeEnum.welfareFreeCoupon.name().equals(systemCouponType)) {
+ || CouponTypeEnum.welfareFreeCoupon.name().equals(systemCouponType)
+ || CouponTypeEnum.freeCouponBuy.name().equals(systemCouponType)) {
if (UserSystemCouponRecord.STATE_FREE_ON == state) {
// 鍏嶅崟涓�
@@ -579,6 +642,21 @@
// 璁㈠崟鏍囪瘑
order.setSignList(signList);
+ // 1.6.5 鏄惁瀛樺湪鏂板厬鎹㈢殑鍒�
+ if (!hasRewardCoupon && exchangeCoupon) {
+ try {
+ Date thirdCreateTime = order.getThirdCreateTime();
+ if (thirdCreateTime != null) {
+ long downOrderTime = thirdCreateTime.getTime();
+ long limitDate = TimeUtil.convertDateToTemp("2019-09-05");
+ if (downOrderTime > limitDate)
+ hasRewardCoupon = true;
+ }
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+
boolean rewardOrder = false;
int type = 1; // 1 甯歌璺宠浆椤甸潰 2寮瑰嚭閫夐」锛堝鍔卞埜锛�
@@ -601,6 +679,9 @@
Map<String, Object> jumpLink = new HashMap<String, Object>();
jumpLink.put("orderNo", order.getOrderNo());
+ if (VersionUtil.greaterThan_1_6_0(acceptData.getPlatform(), acceptData.getVersion())) {
+ jumpLink.put("goodsType", order.getSourceType());
+ }
Map<String, Object> jump = new HashMap<String, Object>();
jump.put("type", type);
@@ -623,6 +704,9 @@
Map<String, Object> jumpLink = new HashMap<String, Object>();
jumpLink.put("orderNo", order.getOrderNo());
+ if (VersionUtil.greaterThan_1_6_0(acceptData.getPlatform(), acceptData.getVersion())) {
+ jumpLink.put("goodsType", order.getSourceType());
+ }
Map<String, Object> jump = new HashMap<String, Object>();
jump.put("type", 1); // 椤甸潰璺宠浆
@@ -744,6 +828,7 @@
cog.setUpdateTime(new Date());
commonOrderGoodsMapper.insertSelective(cog);
newCommonOrder.setCommonOrderGoods(cog);
+ } else {
}
newCommonOrder.setUserInfo(new UserInfo(uid));
commonOrderList.add(addCommonOrder(newCommonOrder));
@@ -789,13 +874,26 @@
if (commonGoodsList.size() <= 0)// 涓嶅瓨鍦ㄥ氨鎻掑叆鍟嗗搧
{
JDGoods goods = JDApiUtil.getGoodsDetail(itemOrder.getSkuId());
+ if (goods == null) {
+ goods = JDUtil.getGoodsFromWeb(itemOrder.getSkuId());
+ }
+
+ if (goods == null) {
+ goods = new JDGoods();
+ goods.setSkuName(itemOrder.getSkuName());
+ goods.setPrice(itemOrder.getPrice());
+ goods.setSkuId(itemOrder.getSkuId());
+ }
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));
@@ -842,10 +940,9 @@
if (!StringUtil.isNullOrEmpty(commonOrder.getTradeId()))
oldCommonOrder = commonOrderMapper.selectBySourceTypeAndTradeId(commonOrder.getSourceType(),
commonOrder.getTradeId());
- else
- oldCommonOrder = commonOrderMapper.selectByOrderNoAndOrderTypeAndOrderBy(commonOrder.getOrderNo(),
- commonOrder.getSourceType(), commonOrder.getOrderBy());
-
+ else {
+ throw new CommonOrderException(10, "浜ゆ槗ID涓虹┖");
+ }
if (oldCommonOrder == null)// 鏂板
{
commonOrder.setCreateTime(new Date());
@@ -857,6 +954,7 @@
} else {// 淇敼
// 宸茬粡缁撶畻锛屽凡缁忓け鏁堬紝鐘舵�佹湭鏀瑰彉鐨勮鍗曚笉澶勭悊
if (oldCommonOrder.getState() == CommonOrder.STATE_JS || oldCommonOrder.getState() == CommonOrder.STATE_SX
+ || oldCommonOrder.getState() == CommonOrder.STATE_WQ
|| (oldCommonOrder.getState().intValue() == commonOrder.getState())) {
return oldCommonOrder;
}
@@ -969,10 +1067,17 @@
@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) throws CommonOrderException {
+ Integer type, Integer orderState, String startTime, String endTime, Integer source)
+ throws CommonOrderException {
- List<CommonOrderVO> list = commonOrderMapper.listQuery(start, count, keyType, key, state, type, orderState,
- startTime, endTime, source);
+ List<CommonOrderVO> list = null;
+
+ if (StringUtil.isNullOrEmpty(key) || keyType == 1) {// 鎼滅储妗嗘棤鍊兼垨鑰呮寜璁㈠崟鍙锋悳绱㈡椂閮藉彧鎼滅储涓昏鍗�
+ list = commonOrderMapper.listQueryWithNoChild(start, count, keyType, key, state, type, orderState,
+ startTime, endTime, source);
+ } else
+ list = commonOrderMapper.listQuery(start, count, keyType, key, state, type, orderState, startTime, endTime,
+ source);
if (list == null) {
list = new ArrayList<CommonOrderVO>();
@@ -981,7 +1086,7 @@
if (list.size() == 0) {
return list;
}
-
+
List<String> listTB = new ArrayList<String>();
List<String> listJD = new ArrayList<String>();
List<String> listPDD = new ArrayList<String>();
@@ -1002,17 +1107,17 @@
if (listTB.size() > 0) {
listRecordTB = userSystemCouponRecordService.getRecordByOrderNoList(Constant.SOURCE_TYPE_TAOBAO, listTB);
}
-
- List<UserSystemCouponRecord> listRecordJD = null;
+
+ List<UserSystemCouponRecord> listRecordJD = null;
if (listJD.size() > 0) {
listRecordJD = userSystemCouponRecordService.getRecordByOrderNoList(Constant.SOURCE_TYPE_JD, listJD);
}
-
+
List<UserSystemCouponRecord> listRecordPDD = null;
if (listPDD.size() > 0) {
listRecordPDD = userSystemCouponRecordService.getRecordByOrderNoList(Constant.SOURCE_TYPE_PDD, listPDD);
}
-
+
SimpleDateFormat format = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
for (CommonOrderVO order : list) {
@@ -1089,23 +1194,25 @@
}
}
}
-
-
+
Integer sourceType = order.getSourceType();
// 濂栧姳璁㈠崟銆佸厤鍗� 浣跨敤璁板綍
if (sourceType == null) {
-
+
} else if (sourceType == Constant.SOURCE_TYPE_TAOBAO && listRecordTB != null && listRecordTB.size() > 0) {
for (UserSystemCouponRecord couponRecord : listRecordTB) {
if (order.getOrderNo().equals(couponRecord.getOrderNo())) {
String systemCouponType = couponRecord.getCouponType();
Integer couponState = couponRecord.getState();
if (CouponTypeEnum.freeCoupon.name().equals(systemCouponType)
- || CouponTypeEnum.welfareFreeCoupon.name().equals(systemCouponType)) {
- if (UserSystemCouponRecord.STATE_SUCCESS == couponState) {
+ || CouponTypeEnum.welfareFreeCoupon.name().equals(systemCouponType)
+ || CouponTypeEnum.freeCouponBuy.name().equals(systemCouponType)) {
+ if (UserSystemCouponRecord.STATE_SUCCESS == couponState) {
// 鍏嶅崟鎴愬姛
- order.setOtherState(1);
- }
+ order.setOtherState(2);
+ } else if (UserSystemCouponRecord.STATE_FREE_ON == couponState) {
+ order.setOtherState(1);
+ }
}
break;
}
@@ -1116,11 +1223,14 @@
String systemCouponType = couponRecord.getCouponType();
Integer couponState = couponRecord.getState();
if (CouponTypeEnum.freeCoupon.name().equals(systemCouponType)
- || CouponTypeEnum.welfareFreeCoupon.name().equals(systemCouponType)) {
- if (UserSystemCouponRecord.STATE_SUCCESS == couponState) {
+ || CouponTypeEnum.welfareFreeCoupon.name().equals(systemCouponType)
+ || CouponTypeEnum.freeCouponBuy.name().equals(systemCouponType)) {
+ if (UserSystemCouponRecord.STATE_SUCCESS == couponState) {
// 鍏嶅崟鎴愬姛
- order.setOtherState(1);
- }
+ order.setOtherState(2);
+ } else if (UserSystemCouponRecord.STATE_FREE_ON == couponState) {
+ order.setOtherState(1);
+ }
}
break;
}
@@ -1131,11 +1241,14 @@
String systemCouponType = couponRecord.getCouponType();
Integer couponState = couponRecord.getState();
if (CouponTypeEnum.freeCoupon.name().equals(systemCouponType)
- || CouponTypeEnum.welfareFreeCoupon.name().equals(systemCouponType)) {
- if (UserSystemCouponRecord.STATE_SUCCESS == couponState) {
+ || CouponTypeEnum.welfareFreeCoupon.name().equals(systemCouponType)
+ || CouponTypeEnum.freeCouponBuy.name().equals(systemCouponType)) {
+ if (UserSystemCouponRecord.STATE_SUCCESS == couponState) {
// 鍏嶅崟鎴愬姛
- order.setOtherState(1);
- }
+ order.setOtherState(2);
+ } else if (UserSystemCouponRecord.STATE_FREE_ON == couponState) {
+ order.setOtherState(1);
+ }
}
break;
}
@@ -1150,9 +1263,12 @@
@Override
public long countQuery(Integer keyType, String key, Integer state, Integer type, Integer orderState,
String startTime, String endTime, Integer source) throws CommonOrderException {
- return commonOrderMapper.countQuery(keyType, key, state, type, orderState, startTime, endTime, source);
+ if (StringUtil.isNullOrEmpty(key) || keyType == 1) {// 鎼滅储妗嗘棤鍊兼垨鑰呮寜璁㈠崟鍙锋悳绱㈡椂閮藉彧鎼滅储涓昏鍗�
+ return commonOrderMapper.countQueryWithNoChild(keyType, key, state, type, orderState, startTime, endTime,
+ source);
+ } else
+ return commonOrderMapper.countQuery(keyType, key, state, type, orderState, startTime, endTime, source);
}
-
@Override
public CommonOrderVO getCommonOrderByOrderNo(Long uid, String orderNo, Integer orderState, Integer sourceType)
@@ -1161,7 +1277,7 @@
if (sourceType == null) {
sourceType = Constant.SOURCE_TYPE_TAOBAO;
}
-
+
CommonOrderVO commonOrderVO = commonOrderMapper.getCommonOrderByOrderNo(uid, orderNo, orderState, sourceType);
// 璁㈠崟淇℃伅涓虹┖
if (commonOrderVO == null) {
@@ -1251,7 +1367,6 @@
return commonOrderVO;
}
-
@Override
public JSONObject getRewardJumpInfo(String orderNo) {
@@ -1331,4 +1446,9 @@
(page - 1) * pageSize, pageSize);
}
+ @Override
+ public List<CommonOrder> getByOrderNo(Long uid, String orderNO) {
+ return commonOrderMapper.getByOrderNo(uid, orderNO);
+ }
+
}
--
Gitblit v1.8.0