From c4664502dfdaffff555b532e65b51a57ac8b29c2 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期三, 16 十月 2024 17:51:32 +0800
Subject: [PATCH] 合并代码

---
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TExchangeOrderController.java |   56 +++++++++++++++++++++++++++++++-------------------------
 1 files changed, 31 insertions(+), 25 deletions(-)

diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TExchangeOrderController.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TExchangeOrderController.java
index e2a563a..f686282 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TExchangeOrderController.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TExchangeOrderController.java
@@ -9,6 +9,7 @@
 import com.ruoyi.chargingPile.api.feignClient.ChargingPileClient;
 import com.ruoyi.chargingPile.api.model.TChargingPile;
 import com.ruoyi.common.core.domain.R;
+import com.ruoyi.common.core.dto.ExchangeBackDto;
 import com.ruoyi.common.core.web.domain.AjaxResult;
 import com.ruoyi.common.core.web.page.PageInfo;
 import com.ruoyi.common.security.service.TokenService;
@@ -27,6 +28,8 @@
 import com.ruoyi.common.core.utils.OrderCodeUtil;
 import com.ruoyi.other.api.feignClient.CouponClient;
 import com.ruoyi.other.api.feignClient.GoodsClient;
+import com.ruoyi.payment.api.feignClient.AliPaymentClient;
+import com.ruoyi.payment.api.feignClient.WxPaymentClient;
 import com.ruoyi.system.api.domain.SysUser;
 import com.ruoyi.system.api.feignClient.SysUserClient;
 import io.swagger.annotations.Api;
@@ -36,10 +39,7 @@
 import org.springframework.web.bind.annotation.*;
 
 import javax.annotation.Resource;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Date;
-import java.util.List;
+import java.util.*;
 import java.util.stream.Collectors;
 
 /**
@@ -68,6 +68,7 @@
     @Resource
     private CouponClient couponClient;
 
+
     @PostMapping("/getExchangeOrderList")
     @ApiOperation(value = "列表查询", tags = {"管理后台-兑换订单"})
     public AjaxResult<PageInfo<TExchangeOrder>> getExchangeOrderList(@RequestBody ShoppingOrderQuery query) {
@@ -93,7 +94,7 @@
     }
     @Resource
     private SysUserClient sysUserClient;
-    @PostMapping("/getShoppingOrderInfoById")
+    @GetMapping("/getShoppingOrderInfoById")
     @ApiOperation(value = "根据订单id查看订单详情", tags = {"管理后台-兑换订单"})
     public AjaxResult<TExchangeOrder> getShoppingOrderList(String id) {
         TExchangeOrder byId = exchangeOrderService.getById(id);
@@ -131,17 +132,21 @@
     public AjaxResult cancelShoppingOrder(String id) {
         TExchangeOrder byId = exchangeOrderService.getById(id);
         Long userid = tokenService.getLoginUser().getUserid();
-        // todo 根据支付方式 取消订单
         byId.setCancellationId(userid);
         byId.setCancellationTime(LocalDateTime.now());
         byId.setStatus(4);
         exchangeOrderService.updateById(byId);
+        // 回退积分
+        Integer points = byId.getPoints();
+        appUserClient.refundPoints(byId.getAppUserId()+"-"+points);
         return AjaxResult.success();
     }
     @GetMapping("/consignerShoppingOrder")
     @ApiOperation(value = "发货", tags = {"管理后台-兑换订单"})
-    public AjaxResult consignerShoppingOrder(String id) {
+    public AjaxResult consignerShoppingOrder(String id,String companyName,String code) {
         TExchangeOrder byId = exchangeOrderService.getById(id);
+        byId.setExpressCompany(companyName);
+        byId.setExpressNumber(code);
         Long userid = tokenService.getLoginUser().getUserid();
         byId.setConsignerId(userid);
         byId.setConsignerTime(LocalDateTime.now());
@@ -190,26 +195,23 @@
         String[] split = goodsIds.split("-");
         // 取出最后一位字符 类型1查询现金购买 类型2查询积分兑换
         String s = split[split.length - 1];
+        String[] split1 = split[0].split(",");
         List<Integer> res = new ArrayList<>();
         switch (Integer.parseInt(s)){
             case 1:
-                for (int i = 0; i < split.length-1; i++) {
+                for (int i = 0; i < split1.length; i++) {
                     Integer reduce = tShoppingOrderService.list(new QueryWrapper<TShoppingOrder>()
                                     .eq("order_type",1)
-                                    .eq("goods_id", split[i])
-                                    .eq("payment_status", 2)
-                                    .ne("refund_status", 2))
+                                    .eq("goods_id", split1[i])
+                                    .isNull("refund_status"))
                             .stream().map(TShoppingOrder::getPurchaseQuantity).reduce(0, Integer::sum);
                     res.add(reduce);
                 }
                 break;
             case 2:
-                for (int i = 0; i < split.length-1; i++) {
-                    Integer reduce = exchangeOrderService.list(new QueryWrapper<TExchangeOrder>()
-                                            .eq("order_type",1)
-                                    .ne("status",4)
-                                    .eq("goods_id", split[i])
-                                    )
+                for (int i = 0; i < split1.length; i++) {
+                    Integer reduce = exchangeOrderService.list(new QueryWrapper<TExchangeOrder>().eq("order_type",1)
+                            .ne("status",4).eq("goods_id", split1[i]))
                             .stream().map(TExchangeOrder::getPurchaseQuantity).reduce(0, Integer::sum);
                     res.add(reduce);
                 }
@@ -224,7 +226,7 @@
      */
     @GetMapping("/getCodeByOrderId/{goodsIds}")
     public R<List<String>> getCodeByOrderId(@PathVariable("goodsIds") String goodsIds){
-        String[] split = goodsIds.split("-");
+        String[] split = goodsIds.split(",");
         List<String> strings = new ArrayList<>();
         for (String s : split) {
             if (s.contains("-")){
@@ -266,7 +268,7 @@
     }
 
     @PostMapping("/create")
-    public R<Long> exchangeCreate(@RequestBody ExchangeDto exchangeDto){
+    public R<ExchangeBackDto> exchangeCreate(@RequestBody ExchangeDto exchangeDto){
         TExchangeOrder tExchangeOrder = new TExchangeOrder();
         tExchangeOrder.setCode(OrderCodeUtil.getOrderCode("DH"));
         tExchangeOrder.setAppUserId(exchangeDto.getUserId());
@@ -277,18 +279,21 @@
             tExchangeOrder.setCouponId(exchangeDto.getGoodId());
         }
         tExchangeOrder.setPurchaseQuantity(1);
-        tExchangeOrder.setAppUserAddressId(Long.valueOf(exchangeDto.getAddressId()));
+        tExchangeOrder.setAppUserAddressId(exchangeDto.getAddressId()==null?null:Long.valueOf(exchangeDto.getAddressId()));
         tExchangeOrder.setPoints(exchangeDto.getPoint());
-        tExchangeOrder.setRemark("");
+        tExchangeOrder.setRemark(exchangeDto.getRemark());
         if (exchangeDto.getGoodType()==1){
-            tExchangeOrder.setStatus(0);
+            tExchangeOrder.setStatus(1);
         }else {
             tExchangeOrder.setStatus(3);
         }
         tExchangeOrder.setCreateTime(LocalDateTime.now());
         tExchangeOrder.setDelFlag(false);
         exchangeOrderService.save(tExchangeOrder);
-        return R.ok(tExchangeOrder.getId());
+        ExchangeBackDto exchangeBackDto = new ExchangeBackDto();
+        exchangeBackDto.setId(tExchangeOrder.getId());
+        exchangeBackDto.setCode(tExchangeOrder.getCode());
+        return R.ok(exchangeBackDto);
 
     }
     
@@ -296,8 +301,8 @@
     
     @GetMapping("/getMyExchangeOrder")
     @ApiOperation(value = "获取兑换记录列表", tags = {"小程序-兑换记录"})
-    public AjaxResult<List<MyExchangeOrderList>> getMyExchangeOrder(GetMyExchangeOrder query){
-        List<MyExchangeOrderList> list = exchangeOrderService.getMyExchangeOrder(query);
+    public AjaxResult<Map<String, Object>> getMyExchangeOrder(GetMyExchangeOrder query){
+        Map<String, Object> list = exchangeOrderService.getMyExchangeOrder(query);
         return AjaxResult.success(list);
     }
     
@@ -307,6 +312,7 @@
     @ApiOperation(value = "获取兑换订单详情", tags = {"小程序-兑换记录"})
     public AjaxResult<ExchangeOrderGoodsInfo> getGoodsExchangeOrder(@PathVariable String id){
         ExchangeOrderGoodsInfo goodsExchangeOrder = exchangeOrderService.getGoodsExchangeOrder(id);
+
         return AjaxResult.success(goodsExchangeOrder);
     }
     

--
Gitblit v1.7.1