From 0fe94ada8ffb65e60372227d4c1c8f5bf98ddb8b Mon Sep 17 00:00:00 2001
From: CeDo <cedoogle@gmail.com>
Date: 星期二, 20 四月 2021 14:45:26 +0800
Subject: [PATCH] add: 订单详细信息订单日志,商家后台登陆时返回关联店铺信息

---
 springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComShopOrderServiceImpl.java |  166 ++++++++++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 156 insertions(+), 10 deletions(-)

diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComShopOrderServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComShopOrderServiceImpl.java
index 2f03666..dc59a90 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComShopOrderServiceImpl.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComShopOrderServiceImpl.java
@@ -1,13 +1,15 @@
 package com.panzhihua.service_community.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 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.ComShopOrderCreateDTO;
-import com.panzhihua.common.model.dtos.shop.ComShopOrderCreateGoodsDTO;
-import com.panzhihua.common.model.dtos.shop.ComShopOrderPreviewDTO;
-import com.panzhihua.common.model.dtos.shop.PageComOrderListDTO;
+import com.panzhihua.common.model.dtos.PageDTO;
+import com.panzhihua.common.model.dtos.shop.*;
+import com.panzhihua.common.model.vos.R;
+import com.panzhihua.service_community.dao.ComShopOrderDAO;
+import com.panzhihua.service_community.model.dos.ComShopOrderDO;
 import com.panzhihua.common.model.vos.R;
 import com.panzhihua.common.model.vos.shop.*;
 import com.panzhihua.common.utlis.OrderNoUtils;
@@ -49,11 +51,14 @@
     private ComShopOrderOperateDAO comShopOrderOperateDAO;
     @Resource
     private ComShopOrderGoodsDAO comShopOrderGoodsDAO;
+    @Resource
+    private ComShopOrderDAO comShopOrderDAO;
 
     /**
      * 订单预览
-     * @param orderPreviewDTO   请求参数
-     * @return  订单预览数据
+     *
+     * @param orderPreviewDTO 请求参数
+     * @return 订单预览数据
      */
     @Override
     public R orderPreview(ComShopOrderPreviewDTO orderPreviewDTO){
@@ -128,7 +133,7 @@
         //查询店铺信息
         ComShopStoreDO storeDO = comShopStoreDAO.selectById(storeId);
         if(storeDO != null){
-            ComShopStoreVO shopStoreVO = new ComShopStoreVO();
+            PageShopStoreVO shopStoreVO = new PageShopStoreVO();
             BeanUtils.copyProperties(storeDO,shopStoreVO);
             orderPreviewVO.setShopStoreVO(shopStoreVO);
         }
@@ -304,7 +309,7 @@
                 }
                 orderVo.setOrderGoodsVOList(orderGoodsVOS);
 
-                ComShopStoreVO shopStoreVO = new ComShopStoreVO();
+                PageShopStoreVO shopStoreVO = new PageShopStoreVO();
                 //查询店铺信息
                 ComShopStoreDO shopStoreDO = comShopStoreDAO.selectById(orderVo.getStoreId());
                 if(shopStoreDO != null){
@@ -333,7 +338,7 @@
         BeanUtils.copyProperties(shopOrderDO,orderVO);
         orderVO.setOrderTotal(shopOrderDO.getTotalAmount());
 
-        ComShopStoreVO shopStoreVO = new ComShopStoreVO();
+        PageShopStoreVO shopStoreVO = new PageShopStoreVO();
         //查询店铺信息
         ComShopStoreDO shopStoreDO = comShopStoreDAO.selectById(shopOrderDO.getStoreId());
         if(shopStoreDO != null){
@@ -345,6 +350,7 @@
         //查询订单下商品信息
         List<ComShopOrderGoodsDO> orderGoodsDOList = comShopOrderGoodsDAO.selectList(new QueryWrapper<ComShopOrderGoodsDO>()
                 .eq("order_no",shopOrderDO.getOrderNo()));
+        StringBuilder sbr = new StringBuilder("");
         if(!orderGoodsDOList.isEmpty()){
             orderGoodsDOList.forEach(orderGoods -> {
                 ComShopOrderGoodsVO orderGoodsVO = new ComShopOrderGoodsVO();
@@ -353,9 +359,11 @@
                 orderGoodsVO.setGoodsPic(orderGoods.getGoodsAttrPic());
                 orderGoodsVO.setPrice(orderGoods.getGoodsAttrPrice());
                 orderGoodsVOS.add(orderGoodsVO);
+                sbr.append(orderGoods.getGoodsName() + " " );
             });
         }
         orderVO.setOrderGoodsVOList(orderGoodsVOS);
+        orderVO.setGoodsName(sbr.toString());
 
         ComShopUserAddressVO userAddressVO = new ComShopUserAddressVO();
         //查询用户收货地址
@@ -365,6 +373,15 @@
             orderVO.setUserAddressVO(userAddressVO);
         }
 
+        //操作日志
+        List<ComShopOrderOperateDO> listOperLog = comShopOrderOperateDAO.selectList(new LambdaQueryWrapper<ComShopOrderOperateDO>().eq(ComShopOrderOperateDO::getOrderNo, shopOrderDO.getOrderNo()));
+        List<ComShopOrderOperateVO> listOperLogVO = new ArrayList<>(listOperLog.size());
+        listOperLog.forEach(logDO ->{
+            ComShopOrderOperateVO copyVO = new ComShopOrderOperateVO();
+            BeanUtils.copyProperties(logDO,copyVO);
+            listOperLogVO.add(copyVO);
+        });
+        orderVO.setLogs(listOperLogVO);
         return R.ok(orderVO);
     }
 
@@ -503,4 +520,133 @@
         orderStatisticsVO.setReceivingNum(receivingNum);
         return R.ok(orderStatisticsVO);
     }
+
+    @Override
+    public R shipOrder(ComShopOrderShipDTO orderShipDTO) {
+        ComShopOrderDO comShopOrderDO = comShopOrderDAO.selectById(orderShipDTO.getOrderId());
+        if(comShopOrderDO==null){
+            return R.fail("订单不存在");
+        }
+        if(!(comShopOrderDO.getStatus()==2)
+                || !(comShopOrderDO.getDeleteStatus()==1)){
+            return R.fail("订单发货失败,订单状态不允许发货");
+        }
+        comShopOrderDO.setDeliveryStatus(2);
+        comShopOrderDO.setDeliveryType(2);
+        comShopOrderDO.setStatus(3);
+        comShopOrderDO.setLogisticsCompany(orderShipDTO.getLogisticsCompany());
+        comShopOrderDO.setLogisticsNo(orderShipDTO.getLogisticsNo());
+        int updated = comShopOrderDAO.updateById(comShopOrderDO);
+        if(updated==1){
+            return R.ok("发货成功");
+        }
+        return R.fail("发货失败!");
+    }
+
+    @Override
+    public R deliverOrder(Long orderId) {
+        ComShopOrderDO comShopOrderDO = comShopOrderDAO.selectById(orderId);
+        if(comShopOrderDO==null){
+            return R.fail("订单不存在");
+        }
+        if(!(comShopOrderDO.getStatus()==2)){
+            return R.fail("当前订单不能配送");
+        }
+        comShopOrderDO.setDeliveryStatus(4);
+        comShopOrderDO.setDeliveryType(1);
+        int updated = comShopOrderDAO.updateById(comShopOrderDO);
+        if(updated==1){
+            return R.ok("开始配送");
+        }
+        return R.fail("操作失败!");
+    }
+
+    @Override
+    public R finishDeliverOrder(Long orderId) {
+        ComShopOrderDO comShopOrderDO = comShopOrderDAO.selectById(orderId);
+        if(comShopOrderDO==null){
+            return R.fail("订单不存在");
+        }
+        if(!(comShopOrderDO.getDeliveryStatus() == 4)){
+            return R.fail("订单还未开始配送");
+        }
+        comShopOrderDO.setDeliveryStatus(5);
+        int updated = comShopOrderDAO.updateById(comShopOrderDO);
+        if(updated==1){
+            return R.ok("配送完成");
+        }
+        return R.fail("操作失败!");
+    }
+
+    @Override
+    public R shopOrderExportData(ComShopOrderExportDTO comShopOrderExportDTO) {
+        Page page = new Page();
+        page.setSize(1000);
+        page.setCurrent(1);
+        IPage<ExcelShopOrderDTO>  excelShopOrderDTO = comShopOrderDAO.selectOrderExport(page, comShopOrderExportDTO);
+        return R.ok(excelShopOrderDTO.getRecords());
+    }
+
+    @Override
+    public R shopOrderFundsExportData(ComShopFundsExportDTO comShopFundsExportDTO) {
+        Page page = new Page();
+        page.setSize(1000);
+        page.setCurrent(1);
+        IPage<ExcelShopFundsDTO>  excelShopFundsDTO = comShopOrderDAO.selectFundsExport(page, comShopFundsExportDTO);
+        return R.ok(excelShopFundsDTO.getRecords());
+    }
+
+    @Override
+    public R getFundsStat(Long userId) {
+        ComShopFundsVO comShopFundsVO = comShopOrderDAO.queryStatis(userId);
+        return R.ok(comShopFundsVO);
+    }
+
+    @Override
+    public R pageShopFunds(PageComShopFundsSearchDTO pageComShopFundsSearchDTO) {
+        Long pageNum = pageComShopFundsSearchDTO.getPageNum();
+        Long pageSize = pageComShopFundsSearchDTO.getPageSize();
+        Page page = new Page();
+        if(pageNum==null||0==pageNum.longValue()){
+            pageNum = 1l;
+        }
+        if(pageSize==null||0==pageSize.longValue()){
+            pageSize = 10l;
+        }
+        page.setCurrent(pageNum);
+        page.setSize(pageSize);
+        IPage<ComShopFundsOrderVO>  comShopFundsOrderVOIPage = comShopOrderDAO.pageShopFunds(page, pageComShopFundsSearchDTO);
+        return R.ok(comShopFundsOrderVOIPage);
+    }
+
+    @Override
+    public R pageShopOrder(PageComShopOrderSearchDTO pageComShopOrderSearchDTO) {
+        Long pageNum = pageComShopOrderSearchDTO.getPageNum();
+        Long pageSize = pageComShopOrderSearchDTO.getPageSize();
+        Page page = new Page();
+
+        page.setCurrent(pageNum);
+        page.setSize(pageSize);
+        if(pageNum==null||0==pageNum.longValue()){
+            page.setCurrent(1l);
+        }
+        if(pageSize==null||0==pageSize.longValue()){
+            page.setSize(10l);
+        }
+
+        IPage<ComShopOrderSearchVO> ipage = this.baseMapper.pageOrderBy(page, pageComShopOrderSearchDTO);
+        return R.ok(ipage);
+    }
+
+
+
+
+    @Override
+    public R capitalDetailByStore(Long id) {
+        if(id==null){
+            R.fail("订单号不能为空!");
+        }
+        CapitalDetailVO vo = this.baseMapper.capitalDetailByStore(id);
+        return R.ok(vo);
+    }
 }

--
Gitblit v1.7.1