From db048fa114cbad7708c17c1d75639d9e06271011 Mon Sep 17 00:00:00 2001
From: yanghui <2536613402@qq.com>
Date: 星期四, 24 十一月 2022 17:18:27 +0800
Subject: [PATCH] #feat 调试问题修改

---
 springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComShopFlowerRefundOrderServiceImpl.java |  126 +++++++++++++++++++++++++++++++++++++++--
 1 files changed, 119 insertions(+), 7 deletions(-)

diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComShopFlowerRefundOrderServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComShopFlowerRefundOrderServiceImpl.java
index e6f555f..5a5ab15 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComShopFlowerRefundOrderServiceImpl.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComShopFlowerRefundOrderServiceImpl.java
@@ -1,32 +1,36 @@
 package com.panzhihua.service_community.service.impl;
 
 import cn.hutool.core.collection.CollUtil;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.panzhihua.common.model.dtos.shop.ComShopFlowerRefundOrderDTO;
+import com.panzhihua.common.model.dtos.shop.ComShopOrderQueryDTO;
 import com.panzhihua.common.model.dtos.shop.PageComOrderRefundDTO;
 import com.panzhihua.common.model.vos.R;
+import com.panzhihua.common.model.vos.community.convenient.ConvenientMerchantVO;
+import com.panzhihua.common.model.vos.shop.ComShopFlowerOrderGoodsVO;
 import com.panzhihua.common.model.vos.shop.ComShopFlowerRefundOrderVO;
 import com.panzhihua.common.model.vos.shop.ComShopOrderCountVO;
 import com.panzhihua.common.utlis.OrderNoUtils;
 import com.panzhihua.common.utlis.WxPayUtils;
 import com.panzhihua.common.utlis.wx.WXPayUtil;
-import com.panzhihua.service_community.dao.ComShopFlowerOrderDAO;
-import com.panzhihua.service_community.dao.ComShopFlowerOrderPayDAO;
-import com.panzhihua.service_community.dao.ComShopFlowerRefundOrderDAO;
-import com.panzhihua.service_community.model.dos.ComShopFlowerOrderDO;
-import com.panzhihua.service_community.model.dos.ComShopFlowerOrderPayDO;
-import com.panzhihua.service_community.model.dos.ComShopFlowerRefundOrderDO;
+import com.panzhihua.service_community.dao.*;
+import com.panzhihua.service_community.model.dos.*;
 import com.panzhihua.service_community.service.ComShopFlowerRefundOrderService;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 
 import javax.annotation.Resource;
 import java.util.*;
 import java.util.stream.Collectors;
+
+import static java.util.Objects.isNull;
+import static java.util.Objects.nonNull;
 
 /**
  * @ClassName: ComShopFlowerRefundOrderServiceImpl
@@ -54,6 +58,15 @@
     private ComShopFlowerOrderDAO comShopFlowerOrderDAO;
     @Resource
     private ComShopFlowerOrderPayDAO comShopFlowerOrderPayDAO;
+    @Resource
+    private ComShopFlowerOrderGoodsDAO comShopFlowerOrderGoodsDAO;
+    @Resource
+    private ComShopFlowerGoodsDAO comShopFlowerGoodsDAO;
+
+    @Resource
+    private ComShopFlowerGoodsAttrDAO comShopFlowerGoodsAttrDAO;
+    @Resource
+    private ConvenientMerchantDAO convenientMerchantDAO;
 
 
     @Override
@@ -61,7 +74,7 @@
         ComShopFlowerRefundOrderDO comShopFlowerRefundOrderDO = new ComShopFlowerRefundOrderDO();
         BeanUtils.copyProperties(comShopFlowerRefundOrderDTO, comShopFlowerRefundOrderDO);
         // 生成退款订单号
-        String refundOrderNo = OrderNoUtils.NextOrderNo(comShopFlowerRefundOrderDTO.getUserId());
+        String refundOrderNo = OrderNoUtils.NextOrderNoFlower(comShopFlowerRefundOrderDTO.getUserId());
         comShopFlowerRefundOrderDO.setRefundOrderNo(refundOrderNo);
         comShopFlowerRefundOrderDO.setStatus(ComShopFlowerRefundOrderDO.status.clz);
         comShopFlowerRefundOrderDO.setDeleteStatus(ComShopFlowerRefundOrderDO.deleteStatus.no);
@@ -73,6 +86,36 @@
     public R pageRefundOrder(PageComOrderRefundDTO pageComOrderRefundDTO) {
         Page page = new Page<>(pageComOrderRefundDTO.getPageNum(), pageComOrderRefundDTO.getPageSize());
         IPage<ComShopFlowerRefundOrderVO> pages = this.baseMapper.pageRefundOrder(page, pageComOrderRefundDTO);
+        for (ComShopFlowerRefundOrderVO comShopFlowerRefundOrderVO : pages.getRecords()) {
+            String orderNo = comShopFlowerRefundOrderVO.getOrderNo();
+            List<ComShopFlowerOrderGoodsVO> orderGoodsVOS = new ArrayList<>();
+            // 查询订单下商品信息
+            List<ComShopFlowerOrderGoodsDO> orderGoodsDOList = comShopFlowerOrderGoodsDAO
+                    .selectList(new QueryWrapper<ComShopFlowerOrderGoodsDO>().eq("order_no",orderNo));
+            StringBuilder sbr = new StringBuilder();
+            if (!orderGoodsDOList.isEmpty()) {
+                orderGoodsDOList.forEach(orderGoods -> {
+                    ComShopFlowerOrderGoodsVO orderGoodsVO = new ComShopFlowerOrderGoodsVO();
+                    BeanUtils.copyProperties(orderGoods, orderGoodsVO);
+                    orderGoodsVO.setNum(orderGoods.getAmount());
+                    orderGoodsVO.setGoodsPic(orderGoods.getGoodsAttrPic());
+                    orderGoodsVO.setPrice(orderGoods.getGoodsAttrPrice());
+
+                    orderGoodsVOS.add(orderGoodsVO);
+                    sbr.append(orderGoods.getGoodsName()).append(" ");
+                });
+            }
+            comShopFlowerRefundOrderVO.setOrderGoodsVOList(orderGoodsVOS);
+            comShopFlowerRefundOrderVO.setGoodsName(sbr.toString());
+
+            ConvenientMerchantVO shopStoreVO = new ConvenientMerchantVO();
+            // 查询店铺信息
+            ConvenientMerchantDO shopStoreDO = convenientMerchantDAO.selectById(comShopFlowerRefundOrderVO.getStoreId());
+            if (shopStoreDO != null) {
+                BeanUtils.copyProperties(shopStoreDO, shopStoreVO);
+            }
+            comShopFlowerRefundOrderVO.setConvenientMerchantVO(shopStoreVO);
+        }
         return R.ok(pages);
     }
 
@@ -145,6 +188,7 @@
         return R.ok();
     }
 
+    @Override
     public R selectCountGroupStatus(Long storeId){
         String[] statusStr = {"clz","tkcg","tksb","yqx","tkz"};
         List<ComShopOrderCountVO> comShopOrderCountVOS = this.baseMapper.selectCountGroupStatus(storeId);
@@ -163,4 +207,72 @@
         retMap.put("zdd",amountTotal);
         return R.ok(retMap);
     }
+
+    /**
+     * 根据订单id取消订单
+     *
+     * @param \
+     * @return 取消结果
+     */
+    @Transactional(rollbackFor = Exception.class)
+    @Override
+    public R orderCancel(Long id) {
+        this.baseMapper.updateCancel(id,ComShopFlowerRefundOrderDO.status.yqx);
+        return R.ok();
+    }
+
+
+    @Override
+    public R refundOrderDetail(Long id){
+        ComShopFlowerRefundOrderDO comShopFlowerRefundOrderDO = this.baseMapper.selectById(id);
+        if (isNull(comShopFlowerRefundOrderDO)){
+            return R.fail("未查询到该退款订单");
+        }
+        ComShopFlowerRefundOrderVO comShopFlowerRefundOrderVO = new ComShopFlowerRefundOrderVO();
+        BeanUtils.copyProperties(comShopFlowerRefundOrderDO,comShopFlowerRefundOrderVO);
+        String orderNo = comShopFlowerRefundOrderDO.getOrderNo();
+        List<ComShopFlowerOrderGoodsVO> orderGoodsVOS = new ArrayList<>();
+        // 查询订单下商品信息
+        List<ComShopFlowerOrderGoodsDO> orderGoodsDOList = comShopFlowerOrderGoodsDAO
+                .selectList(new QueryWrapper<ComShopFlowerOrderGoodsDO>().eq("order_no",orderNo));
+        StringBuilder sbr = new StringBuilder();
+        if (!orderGoodsDOList.isEmpty()) {
+            orderGoodsDOList.forEach(orderGoods -> {
+                ComShopFlowerOrderGoodsVO orderGoodsVO = new ComShopFlowerOrderGoodsVO();
+                BeanUtils.copyProperties(orderGoods, orderGoodsVO);
+                orderGoodsVO.setNum(orderGoods.getAmount());
+                orderGoodsVO.setGoodsPic(orderGoods.getGoodsAttrPic());
+                orderGoodsVO.setPrice(orderGoods.getGoodsAttrPrice());
+                // 查询商品信息判断商品状态
+                ComShopFlowerGoodsDO goodsDO = comShopFlowerGoodsDAO.selectById(orderGoods.getGoodsId());
+                if (goodsDO == null || goodsDO.getDeleteStatus().equals(ComShopFlowerGoodsDO.deleteStatus.yes)
+                        || goodsDO.getDeleteStatus().equals(ComShopFlowerGoodsDO.status.recovery)) {
+                    orderGoodsVO.setGoodsStatus(ComShopFlowerOrderGoodsVO.goodsStatus.ysc);
+                } else if (goodsDO.getStatus().equals(ComShopFlowerGoodsDO.status.lower)) {
+                    orderGoodsVO.setGoodsStatus(ComShopFlowerOrderGoodsVO.goodsStatus.yxj);
+                } else if (goodsDO.getStatus().equals(ComShopFlowerGoodsDO.status.sell)) {
+                    orderGoodsVO.setGoodsStatus(ComShopFlowerOrderGoodsVO.goodsStatus.csz);
+                }
+
+                // 根据商品规格id查询商品规格
+                ComShopFlowerGoodsAttrDO goodsAttrDO = comShopFlowerGoodsAttrDAO.selectById(orderGoods.getGoodsAttrId());
+                if (goodsAttrDO != null) {
+                    orderGoodsVO.setGoodsAttr(goodsAttrDO.getGoodsAttrName());
+                }
+                orderGoodsVOS.add(orderGoodsVO);
+                sbr.append(orderGoods.getGoodsName()).append(" ");
+            });
+        }
+        comShopFlowerRefundOrderVO.setOrderGoodsVOList(orderGoodsVOS);
+        comShopFlowerRefundOrderVO.setGoodsName(sbr.toString());
+
+        ConvenientMerchantVO shopStoreVO = new ConvenientMerchantVO();
+        // 查询店铺信息
+        ConvenientMerchantDO shopStoreDO = convenientMerchantDAO.selectById(comShopFlowerRefundOrderDO.getStoreId());
+        if (shopStoreDO != null) {
+            BeanUtils.copyProperties(shopStoreDO, shopStoreVO);
+        }
+        comShopFlowerRefundOrderVO.setConvenientMerchantVO(shopStoreVO);
+        return R.ok(comShopFlowerRefundOrderVO);
+    }
 }

--
Gitblit v1.7.1