From 819774494bae0c987bc7cbba5060f98443ff30cc Mon Sep 17 00:00:00 2001
From: admin <2780501319@qq.com>
Date: 星期五, 25 十月 2019 23:55:08 +0800
Subject: [PATCH] 订单列表订单找回提醒
---
fanli/src/main/java/com/yeshi/fanli/controller/admin/OrderAdminController.java | 112 +++++++++++++++++++++++++++++++++++++++----------------
1 files changed, 79 insertions(+), 33 deletions(-)
diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/admin/OrderAdminController.java b/fanli/src/main/java/com/yeshi/fanli/controller/admin/OrderAdminController.java
index 974345f..151f10f 100644
--- a/fanli/src/main/java/com/yeshi/fanli/controller/admin/OrderAdminController.java
+++ b/fanli/src/main/java/com/yeshi/fanli/controller/admin/OrderAdminController.java
@@ -1,6 +1,7 @@
package com.yeshi.fanli.controller.admin;
import java.io.PrintWriter;
+import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@@ -10,29 +11,40 @@
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.multipart.MultipartFile;
+import org.springframework.web.multipart.MultipartHttpServletRequest;
import org.yeshi.utils.JsonUtil;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import com.yeshi.fanli.controller.admin.utils.AdminUtils;
+import com.yeshi.fanli.dto.ChartTDO;
+import com.yeshi.fanli.entity.money.UserMoneyDebt;
+import com.yeshi.fanli.entity.money.UserMoneyDebt.UserMoneyDebtTypeEnum;
import com.yeshi.fanli.entity.money.UserMoneyDetail;
import com.yeshi.fanli.entity.money.UserMoneyDetail.UserMoneyDetailTypeEnum;
import com.yeshi.fanli.entity.order.CommonOrder;
+import com.yeshi.fanli.entity.order.HongBaoOrder;
import com.yeshi.fanli.entity.taobao.TaoBaoWeiQuanDrawBack;
import com.yeshi.fanli.entity.taobao.TaoBaoWeiQuanOrder;
import com.yeshi.fanli.exception.order.CommonOrderException;
import com.yeshi.fanli.service.inter.count.HongBaoV2CountService;
import com.yeshi.fanli.service.inter.count.TaoBaoOrderCountService;
+import com.yeshi.fanli.service.inter.money.UserMoneyDebtService;
+import com.yeshi.fanli.service.inter.money.UserMoneyDetailService;
+import com.yeshi.fanli.service.inter.money.tb.TaoBaoWeiQuanDrawBackService;
import com.yeshi.fanli.service.inter.order.CommonOrderCountService;
import com.yeshi.fanli.service.inter.order.CommonOrderService;
+import com.yeshi.fanli.service.inter.order.HongBaoOrderService;
+import com.yeshi.fanli.service.inter.order.OrderProcessService;
import com.yeshi.fanli.service.inter.order.OrderService;
-import com.yeshi.fanli.service.inter.taobao.TaoBaoOrderService;
-import com.yeshi.fanli.service.inter.taobao.TaoBaoWeiQuanDrawBackService;
-import com.yeshi.fanli.service.inter.taobao.TaoBaoWeiQuanOrderService;
-import com.yeshi.fanli.service.inter.user.UserMoneyDetailService;
+import com.yeshi.fanli.service.inter.order.tb.TaoBaoOrderService;
+import com.yeshi.fanli.service.inter.order.tb.TaoBaoWeiQuanOrderService;
+import com.yeshi.fanli.service.inter.user.UserSystemCouponRecordService;
import com.yeshi.fanli.tag.PageEntity;
import com.yeshi.fanli.util.Constant;
import com.yeshi.fanli.util.StringUtil;
+import com.yeshi.fanli.util.taobao.TaoBaoOrderUtil;
import com.yeshi.fanli.vo.order.CommonOrderVO;
import net.sf.json.JSONArray;
@@ -68,6 +80,18 @@
@Resource
private UserMoneyDetailService userMoneyDetailService;
+
+ @Resource
+ private OrderProcessService orderProcessService;
+
+ @Resource
+ private HongBaoOrderService hongBaoOrderService;
+
+ @Resource
+ private UserMoneyDebtService userMoneyDebtService;
+
+ @Resource
+ private UserSystemCouponRecordService userSystemCouponRecordService;
/**
* 缁熻鍘嗗彶璁㈠崟-娣樺疂璁㈠崟
@@ -120,9 +144,9 @@
* @param out
*/
@RequestMapping(value = "getUserOrderList")
- public void getUserOrderList(String callback, Integer pageIndex, Integer pageSize, Integer keyType,
- String key, Integer state, Integer type, Integer orderState, String startTime, String endTime,
- Integer source, PrintWriter out) {
+ public void getUserOrderList(String callback, Integer pageIndex, Integer pageSize, Integer keyType, String key,
+ Integer state, Integer type, Integer orderState, String startTime, String endTime, Integer sourceType,
+ PrintWriter out) {
if (pageIndex == null || pageIndex < 1) {
pageIndex = 1;
@@ -144,16 +168,13 @@
}
try {
- long count = 0;
-
// 鏌ヨ鍒楄〃
List<CommonOrderVO> list = commonOrderService.listQuery((pageIndex - 1) * pageSize, pageSize, keyType, key,
- state, type, orderState, startTime, endTime, source);
+ state, type, orderState, startTime, endTime, sourceType);
- if (list != null && list.size() > 0) {
- // 缁熻鎬绘暟
- count = commonOrderService.countQuery(keyType, key, state, type, orderState, startTime, endTime, source);
- }
+ // 缁熻鎬绘暟
+ long count = commonOrderService.countQuery(keyType, key, state, type, orderState, startTime, endTime,
+ sourceType);
// 鏌ヨ鏄惁缁存潈
for (CommonOrderVO order : list) {
@@ -166,7 +187,7 @@
TaoBaoWeiQuanDrawBack drawBack = taoBaoWeiQuanDrawBackService
.selectByOrderItemId(weiQuanOrder.getOrderItemId());
if (drawBack != null) {// 宸茬粡閫�娆�
-
+
// 璁$畻閫�娆捐祫閲�
UserMoneyDetail detail = null;
switch (order.getHongBaoType()) {
@@ -194,7 +215,22 @@
// 閫�娆炬垚鍔�
order.setWeiQuanBackMoney(detail.getMoney().abs().toString());
} else {// 灏氭湭閫�娆�
- order.setWeiQuanBackMoney("-" + order.getHongBao());
+ order.setWeiQuanBackMoney(drawBack.getDrawBackMoney().toString());
+ // 鏌ヨ鍑哄搴旂殑hongBaoId
+ CommonOrder commonOrder = commonOrderService.selectBySourceTypeAndTradeId(
+ Constant.SOURCE_TYPE_TAOBAO, drawBack.getOrderItemId());
+ if (commonOrder != null) {
+ HongBaoOrder hongBaoOrder = hongBaoOrderService
+ .selectDetailByCommonOrderId(commonOrder.getId());
+ if (hongBaoOrder != null) {
+ UserMoneyDebt debt = userMoneyDebtService.selectByTypeAndSourceId(
+ UserMoneyDebtTypeEnum.order, hongBaoOrder.getHongBaoV2().getId());
+ if (debt != null && debt.getLeftMoney().compareTo(new BigDecimal(0)) > 0) {
+ order.setWeiQuanBackMoney(
+ new BigDecimal(0).subtract(debt.getLeftMoney()).toString());// 鏈墸闄�
+ }
+ }
+ }
}
} else {// 灏氭湭閫�娆�
@@ -367,7 +403,7 @@
JSONArray line_list = new JSONArray();
for (String channel : channelList) {
- List<Map<String, Object>> list = hongBaoV2CountService.count24HOderByChannel(channel, dateType, year,
+ List<ChartTDO> list = hongBaoV2CountService.count24HOderByChannel(channel, dateType, year,
startTime, endTime);
if ("all".equalsIgnoreCase(channel)) {
@@ -492,7 +528,6 @@
*/
public JSONObject countHistoryHongBao(String channelArray, Integer dateType, Integer state, String year,
String startTime, String endTime, int countType) throws Exception {
-
if (dateType != 1 && (!StringUtil.isNullOrEmpty(startTime) || !StringUtil.isNullOrEmpty(endTime))) {
startTime = null;
endTime = null;
@@ -536,7 +571,7 @@
JSONArray line_list = new JSONArray();
for (String channel : channelList) {
- List<Map<String, Object>> list = null;
+ List<ChartTDO> list = null;
if (countType == 1) {
list = hongBaoV2CountService.countHongBaoNum(channel, dateType, state, year, startTime, endTime);
} else if (countType == 2) {
@@ -561,7 +596,6 @@
}
innerList.put("data", gson.toJson(map.get("value")));
}
-
line_list.add(innerList);
}
@@ -571,9 +605,7 @@
} else {
data.put("xAxis_list", gson.toJson(dateList));
}
-
data.put("line_list", line_list);
-
return data;
}
@@ -593,7 +625,6 @@
@RequestMapping(value = "getTypeNumber")
public void getTypeNumber(String callback, Integer dateType, String typeArray, String year, String startTime,
String endTime, PrintWriter out) {
-
String validateMsg = AdminUtils.validateParams(dateType, startTime, endTime);
if (validateMsg != null) {
JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(validateMsg));
@@ -640,15 +671,11 @@
Gson gson = new Gson();
Object objectDate = null;
List<String> dateList = AdminUtils.getDateList(dateType, startTime, endTime, year);
-
try {
-
JSONArray line_list = new JSONArray();
for (Integer type : channelList) {
-
- List<Map<String, Object>> list = hongBaoV2CountService.countHongBaoType(dateType, type, year, startTime,
+ List<ChartTDO> list = hongBaoV2CountService.countHongBaoType(dateType, type, year, startTime,
endTime);
-
JSONObject innerList = new JSONObject();
if (type == 1) {
innerList.put("name", "杩斿埄璁㈠崟");
@@ -691,7 +718,7 @@
}
/**
- * 璁㈠崟璺熻釜鍑嗙‘鐜�(杩斿埄鍒哥敤鎴疯鍗�/娣樺疂鑱旂洘璁㈠崟)
+ * 璁㈠崟璺熻釜鍑嗙‘鐜�(鏉挎牀蹇渷鐢ㄦ埛璁㈠崟/娣樺疂鑱旂洘璁㈠崟)
*
* @param callback
* @param dateType
@@ -702,7 +729,7 @@
*/
@RequestMapping(value = "getTrackAccuracyRate")
public void getTrackAccuracyRate(String callback, Integer dateType, String year, String startTime, String endTime,
- PrintWriter out) {
+ int sourceType, PrintWriter out) {
if (dateType != 1 && (!StringUtil.isNullOrEmpty(startTime) || !StringUtil.isNullOrEmpty(endTime))) {
startTime = null;
@@ -737,8 +764,8 @@
JSONArray line_list = new JSONArray();
- List<Map<String, Object>> list = commonOrderCountService.getTrackAccuracyRate(dateType, year, startTime,
- endTime);
+ List<ChartTDO> list = commonOrderCountService.getTrackAccuracyRate(dateType, year, startTime,
+ endTime, sourceType);
JSONObject innerList = new JSONObject();
innerList.put("name", "鎬昏");
@@ -901,7 +928,7 @@
List<String> dateList = AdminUtils.getDateList(dateType, startTime, endTime, year);
JSONArray line_list = new JSONArray();
- List<Map<String, Object>> list = null;
+ List<ChartTDO> list = null;
if (countType == 1) {
list = commonOrderCountService.countWeiQaunOrderNumber(dateType, year, startTime, endTime);
} else if (countType == 2) {
@@ -937,4 +964,23 @@
return data;
}
+ @RequestMapping(value = "uploadTaoBaoWeiQuanOrder")
+ public void uploadWeiQuanOrder(String callback, HttpServletRequest request, PrintWriter out) {
+ try {
+ // 1. 鍏堝垽鏂環ttpRequest 鏄惁鍚湁鏂囦欢绫诲瀷
+ if (request instanceof MultipartHttpServletRequest) {
+ MultipartHttpServletRequest fileRequest = (MultipartHttpServletRequest) request;
+ MultipartFile file = fileRequest.getFile("file");
+ List<TaoBaoWeiQuanOrder> orderList = TaoBaoOrderUtil.getWeiQuanOrders(file.getInputStream());
+ for (TaoBaoWeiQuanOrder order : orderList)
+ taoBaoWeiQuanOrderService.addWeiQuanOrder(order);// 娣诲姞缁存潈璁㈠崟鍒版暟鎹簱
+ // 澶勭悊缁存潈璁㈠崟
+ orderProcessService.weiQuanOrder(orderList);
+ }
+ JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("鏇存柊鎴愬姛"));
+ } catch (Exception e) {
+ JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鏇存柊澶辫触"));
+ }
+ }
+
}
--
Gitblit v1.8.0