From d28bed1a1275131a5ca37f7da37961e2b518ac07 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期一, 26 八月 2019 13:44:00 +0800 Subject: [PATCH] 淘礼金创建异常处理 --- fanli/src/main/java/com/yeshi/fanli/controller/admin/OrderAdminController.java | 51 ++++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 40 insertions(+), 11 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 fa1555f..0c98971 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; @@ -17,22 +18,28 @@ import com.google.gson.Gson; import com.google.gson.reflect.TypeToken; import com.yeshi.fanli.controller.admin.utils.AdminUtils; +import com.yeshi.fanli.entity.money.UserMoneyDebt.UserMoneyDebtTypeEnum; +import com.yeshi.fanli.entity.money.UserMoneyDebt; 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.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.user.UserSystemCouponRecordService; import com.yeshi.fanli.tag.PageEntity; import com.yeshi.fanli.util.Constant; import com.yeshi.fanli.util.StringUtil; @@ -75,6 +82,15 @@ @Resource private OrderProcessService orderProcessService; + + @Resource + private HongBaoOrderService hongBaoOrderService; + + @Resource + private UserMoneyDebtService userMoneyDebtService; + + @Resource + private UserSystemCouponRecordService userSystemCouponRecordService; /** * 缁熻鍘嗗彶璁㈠崟-娣樺疂璁㈠崟 @@ -128,7 +144,8 @@ */ @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, PrintWriter out) { + Integer state, Integer type, Integer orderState, String startTime, String endTime, Integer sourceType, + PrintWriter out) { if (pageIndex == null || pageIndex < 1) { pageIndex = 1; @@ -150,16 +167,13 @@ } try { - long count = 0; - // 鏌ヨ鍒楄〃 List<CommonOrderVO> list = commonOrderService.listQuery((pageIndex - 1) * pageSize, pageSize, keyType, key, - state, type, orderState, startTime, endTime); + state, type, orderState, startTime, endTime, sourceType); - if (list != null && list.size() > 0) { - // 缁熻鎬绘暟 - count = commonOrderService.countQuery(keyType, key, state, type, orderState, startTime, endTime); - } + // 缁熻鎬绘暟 + long count = commonOrderService.countQuery(keyType, key, state, type, orderState, startTime, endTime, + sourceType); // 鏌ヨ鏄惁缁存潈 for (CommonOrderVO order : list) { @@ -200,7 +214,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 {// 灏氭湭閫�娆� @@ -708,7 +737,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; @@ -744,7 +773,7 @@ JSONArray line_list = new JSONArray(); List<Map<String, Object>> list = commonOrderCountService.getTrackAccuracyRate(dateType, year, startTime, - endTime); + endTime, sourceType); JSONObject innerList = new JSONObject(); innerList.put("name", "鎬昏"); -- Gitblit v1.8.0