From 271ae63c20fcbe28d29c47f1881138ff6551a2a1 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期三, 10 六月 2020 19:26:26 +0800
Subject: [PATCH] 唯品会订单bug修复,APP端佣金比例展示错误bug修复
---
fanli/src/main/java/com/yeshi/fanli/controller/client/v2/PreviewInfoControllerV2.java | 97 +++++++++++++++++++++++++++++++-----------------
1 files changed, 62 insertions(+), 35 deletions(-)
diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/PreviewInfoControllerV2.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/PreviewInfoControllerV2.java
index a8d4646..168319d 100644
--- a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/PreviewInfoControllerV2.java
+++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/PreviewInfoControllerV2.java
@@ -21,6 +21,7 @@
import com.yeshi.fanli.dto.push.PushContentDTO;
import com.yeshi.fanli.entity.accept.AcceptData;
import com.yeshi.fanli.entity.bus.user.Extract;
+import com.yeshi.fanli.entity.bus.user.PayInfo;
import com.yeshi.fanli.entity.bus.user.PreviewInfo;
import com.yeshi.fanli.entity.bus.user.PreviewInfo.PreviewEnum;
import com.yeshi.fanli.entity.bus.user.UserInfo;
@@ -35,6 +36,7 @@
import com.yeshi.fanli.service.inter.order.CommonOrderService;
import com.yeshi.fanli.service.inter.order.OrderMoneyDailyCountService;
import com.yeshi.fanli.service.inter.push.PushService;
+import com.yeshi.fanli.service.inter.user.PayInfoService;
import com.yeshi.fanli.service.inter.user.PreviewInfoService;
import com.yeshi.fanli.service.inter.user.UserInfoService;
import com.yeshi.fanli.util.Constant;
@@ -61,24 +63,25 @@
@Resource
private RedisManager redisManager;
-
+
@Resource
private HongBaoV2CountService hongBaoV2CountService;
-
+
@Resource
private UserMoneyDetailService userMoneyDetailService;
-
+
@Resource
private OrderMoneyDailyCountService orderMoneyDailyCountService;
-
+
@Resource
private CommonOrderService commonOrderService;
-
+
@Resource
private PushService pushService;
-
-
+ @Resource
+ private PayInfoService payInfoService;
+
/**
* 淇濆瓨璧勯噾淇℃伅
*
@@ -102,7 +105,6 @@
}
}
-
@RequestMapping(value = "getMoneyInfo")
public void getMoneyInfo(String callback, AcceptData acceptData, Long uid, PrintWriter out) {
MoneyStatisticVO dto = null;
@@ -222,7 +224,7 @@
vo.setMonthPredict(cratePredictVO(orderMoneyDailyCountService.query(uid, minDate, maxDate)));
return vo;
}
-
+
private MoneyPredictVO cratePredictVO(List<OrderMoneyDailyCount> list) {
MoneyPredictVO predictVO = new MoneyPredictVO();
predictVO.setMineNum(0);
@@ -248,7 +250,7 @@
predictVO.setTotalMoney(predictVO.getMineMoney().add(predictVO.getTeamMoney()));
return predictVO;
}
-
+
/**
* 淇濆瓨鎻愮幇璁板綍
*
@@ -279,9 +281,10 @@
PreviewInfo previewInfo = previewInfoService.get(uid, PreviewEnum.extractRecord);
if (previewInfo != null && !StringUtil.isNullOrEmpty(previewInfo.getContent())) {
Gson gson = new Gson();
- list = gson.fromJson(previewInfo.getContent(), new TypeToken<ArrayList<Extract>>() {}.getType());
+ list = gson.fromJson(previewInfo.getContent(), new TypeToken<ArrayList<Extract>>() {
+ }.getType());
}
-
+
if (list == null)
list = new ArrayList<>();
@@ -303,14 +306,13 @@
JSONArray.add(object);
}
}
-
JSONObject json = new JSONObject();
json.put("count", JSONArray.size());
json.put("list", JSONArray);
JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(json));
}
-
+
/**
* 鍒犻櫎鎻愮幇璁板綍
*
@@ -334,7 +336,7 @@
e.printStackTrace();
}
}
-
+
/**
* 鍒犻櫎鎻愮幇璁板綍
*
@@ -364,7 +366,7 @@
* @param out
*/
@RequestMapping(value = "saveMineInfo")
- public void saveMineInfo(String callback, AcceptData acceptData, MineInfoVO infoVO, PrintWriter out) {
+ public void saveMineInfo(String callback, AcceptData acceptData, MineInfoVO infoVO, PrintWriter out) {
if (infoVO == null || infoVO.getUid() == null) {
JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鐢ㄦ埛鏈櫥褰�"));
return;
@@ -379,7 +381,7 @@
JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("淇濆瓨澶辫触"));
}
}
-
+
@RequestMapping(value = "getMineInfo")
public void getMineInfo(String callback, AcceptData acceptData, Long uid, PrintWriter out) {
PreviewInfo previewInfo = previewInfoService.get(uid, PreviewEnum.mineInfo);
@@ -387,9 +389,9 @@
if (previewInfo != null && !StringUtil.isNullOrEmpty(previewInfo.getContent())) {
dto = new Gson().fromJson(previewInfo.getContent(), MineInfoVO.class);
}
-
+
if (dto == null)
- dto = new MineInfoVO();
+ dto = new MineInfoVO();
JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(JsonUtil.getSimpleGson().toJson(dto)));
}
@@ -406,13 +408,17 @@
*/
@RequestMapping(value = "saveMoneyArrival")
public void saveMoneyArrival(String callback, AcceptData acceptData, Long uid, BigDecimal money, String dayTime,
- String orderNo, PrintWriter out) {
+ PrintWriter out) {
try {
+ // 鏌ヨ鏈�鏂颁竴鏉℃敮浠樺疂璁㈠崟鍙�
+ PayInfo payInfo = payInfoService.getNearInfo();
+ String orderNo = getAlipayNo(payInfo.getOrderId());
+
String link = previewInfoService.saveMoneyArrival(uid, money, dayTime, orderNo, acceptData.getPlatform());
JSONObject object = new JSONObject();
object.put("link", link);
JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(object));
- } catch (PreviewInfoException e) {
+ } catch (PreviewInfoException e) {
JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(e.getMsg()));
} catch (Exception e) {
LogHelper.errorDetailInfo(e);
@@ -420,7 +426,16 @@
}
}
-
+ private String getAlipayNo(String payNo) {
+ // 鏇挎崲鍓�8浣�
+ String newNo = payNo.substring(9, payNo.length());
+ newNo = TimeUtil.getyyyyMMdd(java.lang.System.currentTimeMillis()) + newNo;
+ // 闅忔満鐢熸垚鏇挎崲鍚�6浣�
+ newNo = newNo.substring(0, payNo.length() - 6);
+ newNo += (long) ((Math.random() * 9 + 1) * 100000);
+ return newNo;
+ }
+
@RequestMapping(value = "getMoneyArrivalImg")
public void getMoneyArrivalImg(String callback, AcceptData acceptData, Long uid, PrintWriter out) {
PreviewInfo previewInfo = previewInfoService.get(uid, PreviewEnum.moneyInfo);
@@ -442,35 +457,40 @@
* @param out
*/
@RequestMapping(value = "saveOrderInfo")
- public void saveOrderInfo(String callback, AcceptData acceptData, Long uid, Integer type, Integer num, PrintWriter out) {
+ public void saveOrderInfo(String callback, AcceptData acceptData, Long uid, Integer type, Integer num,
+ PrintWriter out) {
if (uid == null) {
JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鐢ㄦ埛鏈櫥褰�"));
return;
}
-
+
if (type == null || type < 1 || type > 2) {
JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("璇烽�夋嫨璁㈠崟绫诲瀷"));
return;
}
-
+
if (num == null || num <= 0) {
JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("璇峰~鍐欐帹閫佹暟閲�"));
return;
}
-
+
if (num > 50) {
JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鏈�澶氭敮鎸�50鏉�"));
return;
}
-
+
// 鑾峰彇鏈�鏂拌鍗曞彿
String orderNo = commonOrderService.getNewestOrderNoByTaoBao();
-
+
// 闅忔満璁㈠崟鍙�
List<String> list = getRandomOrderNo(orderNo, num);
- for (String orderId: list) {
- PushContentDTO dto = PushMsgFactory.createFanLiOrderStatisticed(Constant.SOURCE_TYPE_TAOBAO,
- orderId, BigDecimal.ZERO);
+ // new Thread(new Runnable() {
+ //
+ // @Override
+ // public void run() {
+ for (String orderId : list) {
+ PushContentDTO dto = PushMsgFactory.createInviteOrderStatisticed(Constant.SOURCE_TYPE_TAOBAO, orderId,
+ BigDecimal.ZERO);
try {
pushService.pushZNX(uid, dto.getTitle(), dto.getContent(), null, null);
} catch (NumberFormatException e) {
@@ -478,11 +498,18 @@
} catch (PushException e) {
e.printStackTrace();
}
+ try {
+ Thread.sleep(100);
+ } catch (InterruptedException e) {
+ e.printStackTrace();
+ }
}
+ // }
+ // }).start();
+
JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("鎺ㄩ�佹垚鍔�"));
}
-
-
+
private List<String> getRandomOrderNo(String orderNo, int count) {
String newNo = orderNo.substring(0, 3);
long lenth = orderNo.length() - 3;
@@ -500,7 +527,7 @@
set.add(newNo + randomNum);
}
}
-
+
// 杞崲list
List<String> list = new ArrayList<>();
for (String s : set) {
@@ -508,7 +535,7 @@
}
// 鎺掑簭
Collections.sort(list);
-
+
return list;
}
}
--
Gitblit v1.8.0