From 05a82deffa89a22fa35abaa9196053f43cbc1103 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Fri, 27 May 2022 19:51:07 +0800
Subject: [PATCH] fix

---
 zq-erp/src/main/java/com/matrix/system/padApi/action/PadOrderAction.java |  146 +++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 124 insertions(+), 22 deletions(-)

diff --git a/zq-erp/src/main/java/com/matrix/system/padApi/action/PadOrderAction.java b/zq-erp/src/main/java/com/matrix/system/padApi/action/PadOrderAction.java
index c453630..75669ba 100644
--- a/zq-erp/src/main/java/com/matrix/system/padApi/action/PadOrderAction.java
+++ b/zq-erp/src/main/java/com/matrix/system/padApi/action/PadOrderAction.java
@@ -1,6 +1,7 @@
 package com.matrix.system.padApi.action;
 
 import cn.hutool.core.util.ObjectUtil;
+import cn.hutool.core.util.StrUtil;
 import com.matrix.component.asyncmessage.AsyncMessageManager;
 import com.matrix.core.constance.MatrixConstance;
 import com.matrix.core.exception.GlobleException;
@@ -22,13 +23,12 @@
 import com.matrix.system.hive.action.BaseController;
 import com.matrix.system.hive.action.util.QueryUtil;
 import com.matrix.system.hive.bean.*;
+import com.matrix.system.hive.dao.ShoppingGoodsDao;
 import com.matrix.system.hive.dao.SysOrderItemDao;
 import com.matrix.system.hive.dao.SysShopInfoDao;
-import com.matrix.system.hive.service.MoneyCardUseService;
-import com.matrix.system.hive.service.ShoppingGoodsService;
-import com.matrix.system.hive.service.SysOrderService;
-import com.matrix.system.hive.service.SysShopInfoService;
+import com.matrix.system.hive.service.*;
 import com.matrix.system.padApi.dto.PadOrderListDto;
+import com.matrix.system.padApi.dto.PadShowListDto;
 import com.matrix.system.padApi.vo.PadOrderDetailVo;
 import com.matrix.system.shopXcx.mqTask.AsyncMessageRouting;
 import com.matrix.system.wechart.templateMsg.UniformMsgParam;
@@ -36,7 +36,6 @@
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiResponse;
 import io.swagger.annotations.ApiResponses;
-import org.assertj.core.util.Arrays;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.validation.annotation.Validated;
@@ -88,12 +87,39 @@
         pageVo.setOffset(offset);
         pageVo.setLimit(limit);
 
+        //默认排序
+        if (StringUtils.isBlank(pageVo.getSort())) {
+            pageVo.setSort("order_time");
+        }
+        if (StringUtils.isBlank(pageVo.getOrder())) {
+            pageVo.setOrder("desc");
+        }
         if (!DataAuthUtil.hasAllShopAuth()) {
-            orderListDto.setShopId(user.getShopId());
+            orderListDto.setShopId(getMe().getShopId());
         }
         QueryUtil.setQueryLimitCom(orderListDto);
-        return AjaxResult.buildSuccessInstance(sysOrderService.findPadApiOrderListInPage(orderListDto, pageVo),
-                sysOrderService.findPadApiOrderListTotal(orderListDto));
+
+        SysOrder sysOrder = new SysOrder();
+        sysOrder.setShopId(orderListDto.getShopId());
+        if(ObjectUtil.isNotEmpty(orderListDto.getOrderStatus())){
+            sysOrder.setStatu(orderListDto.getStatus());
+        }
+
+        if(ObjectUtil.isNotEmpty(orderListDto.getBeginTimeVo())){
+            sysOrder.setBeginTimeVo(orderListDto.getBeginTimeVo());
+        }
+        if(ObjectUtil.isNotEmpty(orderListDto.getEndTimeVo())){
+            sysOrder.setEndTimeVo(orderListDto.getEndTimeVo());
+        }
+
+        if(ObjectUtil.isNotEmpty(orderListDto.getVipId())){
+            sysOrder.setVipId(orderListDto.getVipId());
+        }
+        if(StrUtil.isNotEmpty(orderListDto.getQueryKey())){
+            sysOrder.setKeyWordVo(orderListDto.getQueryKey());
+        }
+        return new AjaxResult(AjaxResult.STATUS_SUCCESS, orderService.findInPage(sysOrder, pageVo),
+                orderService.findTotal(sysOrder));
     }
 
     @ApiOperation(value = "获取订单详情", notes = "获取订单详情")
@@ -111,7 +137,7 @@
     @ApiOperation(value = "取消订单", notes = "取消订单")
     @GetMapping(value = "/cancelOrder/{id}")
     @Transactional(rollbackFor = Exception.class)
-    public AjaxResult cancelOrder(Long id) {
+    public AjaxResult cancelOrder(@PathVariable Long id) {
 
         SysOrder order = orderService.findById(id);
         if (ObjectUtil.isEmpty(order)) {
@@ -186,7 +212,7 @@
 
     @ApiOperation(value = "获取用户的可用充值卡", notes = "获取用户的可用充值卡")
     @GetMapping(value = "getUseMoneyCard/{vipId}")
-    public AjaxResult getUseMoneyCard(Long vipId) {
+    public AjaxResult getUseMoneyCard(@PathVariable Long vipId) {
         MoneyCardUse moneyCardUse = new MoneyCardUse();
         moneyCardUse.setVipId(vipId);
         moneyCardUse.setStatus(Dictionary.MONEYCARD_STATUS_YX);
@@ -200,25 +226,43 @@
         SysUsers user = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY);
         SysOrder order = orderService.findById(id);
         order.setItems(orderItemDao.selectByOrderId(id));
-        return AjaxResult.buildSuccessInstance(Arrays.asList(order));
+        return AjaxResult.buildSuccessInstance(order);
     }
 
     @ApiOperation(value = "列表显示搜索项目绑定的产品信息", notes = "列表显示搜索项目绑定的产品信息")
     @PostMapping(value = "/showList")
-    public AjaxResult showList(@RequestBody ShoppingGoods shoppingGoods, PaginationVO pageVo) {
-        QueryUtil.setQueryLimit(shoppingGoods);
+    public AjaxResult showList(@RequestBody PadShowListDto padShowListDto) {
+
+        int offset = (padShowListDto.getPageNum() - 1) * padShowListDto.getPageSize();
+        int limit = padShowListDto.getPageSize();
+        PaginationVO pageVo = new PaginationVO();
+        pageVo.setOffset(offset);
+        pageVo.setLimit(limit);
+
+        ShoppingGoods shoppingGoods = new ShoppingGoods();
+        if(StrUtil.isNotEmpty(padShowListDto.getName())){
+            shoppingGoods.setName(padShowListDto.getName());
+        }
+        if(StrUtil.isNotEmpty(padShowListDto.getGoodType())){
+            shoppingGoods.setGoodType(padShowListDto.getGoodType());
+        }
+//        QueryUtil.setQueryLimit(shoppingGoods);
         if(StringUtils.isBlank(pageVo.getSort())){
             pageVo.setOrder("desc");
             pageVo.setSort("createTime");
         }
         //2表示查询总部产品
-        if (shoppingGoods.getHeadquarters()!=null && 2==shoppingGoods.getHeadquarters()) {
-            //仅查询本店产品
-            SysShopInfo zbShop = shopInfoDao.selectZbShop(getMe().getCompanyId());
-            //如果是总部自己查询自己的库存则不需加入这个调价
-            if (getMe().getShopId().equals(zbShop.getId())){
+//        if (shoppingGoods.getHeadquarters()!=null && 2==shoppingGoods.getHeadquarters()) {
+//            //仅查询本店产品
+//            SysShopInfo zbShop = shopInfoDao.selectZbShop(getMe().getCompanyId());
+//            //如果是总部自己查询自己的库存则不需加入这个调价
+//            if (getMe().getShopId().equals(zbShop.getId())){
+//                shoppingGoods.setHeadquarters(1);
+//            }
+//        }
+        SysShopInfo zbShop = shopInfoDao.selectZbShop(getMe().getCompanyId());
+        if (getMe().getShopId().equals(zbShop.getId())){
                 shoppingGoods.setHeadquarters(1);
-            }
         }
         shoppingGoods.setIsDel(ShoppingGoods.NORMAL);
         List<ShoppingGoods> dataList = shoppingGoodsService.findInPage(shoppingGoods, pageVo);
@@ -243,7 +287,7 @@
         sysOrderResult.setZkTotal(zkTotal.setScale(2, BigDecimal.ROUND_DOWN).doubleValue());
         sysOrderResult.setTotal(total.doubleValue());
 
-        return AjaxResult.buildSuccessInstance(java.util.Arrays.asList(sysOrderResult));
+        return AjaxResult.buildSuccessInstance(sysOrderResult);
     }
 
     @ApiOperation(value = "订单支付", notes = "订单支付")
@@ -264,7 +308,7 @@
         asyncMessageManager.sendMsg(AsyncMessageRouting.SEND_UNIFORM_TEMPLATE_MSG ,uniformMsgParam);
 
         //处理用户购买的产品
-        return AjaxResult.buildSuccessInstance(java.util.Arrays.asList(sysOrder), "订单结算成功");
+        return AjaxResult.buildSuccessInstance(sysOrder, "订单结算成功");
     }
 
     @ApiOperation(value = "订单保存接口-挂单", notes = "订单保存接口-挂单")
@@ -276,7 +320,65 @@
         //校验保存订单
         sysOrder = orderService.checkAndSaveOrder(sysOrder);
         //处理用户购买的产品
-        return AjaxResult.buildSuccessInstance(java.util.Arrays.asList(sysOrder), "订单保存成功");
+        return AjaxResult.buildSuccessInstance(sysOrder, "订单保存成功");
+    }
+
+
+    @Autowired
+    ShoppingGoodsDao shoppingGoodsDao;
+
+    @Autowired
+    private SysOrderItemService orderItemService;
+
+    @Autowired
+    private AchieveNewService achieveNewService;
+
+    @Autowired
+    private SysVipInfoService sysVipInfoService;
+
+    @Autowired
+    private SysOrderFlowService sysOrderFlowService;
+
+    @ApiOperation(value = "列表进入详情", notes = "列表进入详情")
+    @PostMapping(value = "/findOrderDetailByIdOrNo")
+    public AjaxResult findOrderDetailByIdOrNo(@RequestBody SysOrder orderVo) {
+        // 根据id查到对应的订单信息
+        SysOrder order = null;
+        if (orderVo.getId() != null) {
+            order = orderService.findById(orderVo.getId());
+        } else if (StringUtils.isNotBlank(orderVo.getOrderNo())) {
+            List<SysOrder> byModel = orderService.findByModel(orderVo);
+            if (byModel.size() == 1) {
+                order = orderService.findById(byModel.get(0).getId());
+            }
+        }
+        List<SysOrderItem> sysOrderItems = orderItemDao.selectByOrderId(order.getId());
+        order.setItems(sysOrderItems);
+
+        SysVipInfo vipInfo = sysVipInfoService.findById(order.getVipId());
+        // 根据会员Id查到会员有效的会员卡
+        // 根据订单号查找订单条目
+        List<SysOrderItem> orderItems = orderItemService.findByOrderId(order.getId());
+
+        MoneyCardUse moneyCardUse = new MoneyCardUse();
+        moneyCardUse.setVipId(order.getVipId());
+        List<MoneyCardUse> cards = cardUseService.findByModel(moneyCardUse);
+
+        List<SysOrderFlow> flows = sysOrderFlowService.findByOrderId(order.getId());
+        order.setFlows(flows);
+
+        List<SysOrderFlow> payMethods = sysOrderFlowService.findPayMethodsAmount(order.getId());
+
+        List<AchieveNew> achieveList = achieveNewService.findOrderItemAchieve(order.getId());
+
+        AjaxResult ajaxResult = AjaxResult.buildSuccessInstance("获取成功");
+        ajaxResult.putInMap("orderItems", orderItems);
+        ajaxResult.putInMap("order", order);
+        ajaxResult.putInMap("cards", cards);
+        ajaxResult.putInMap("vipInfo", vipInfo);
+        ajaxResult.putInMap("payMethods", payMethods);
+        ajaxResult.putInMap("achieveList", achieveList);
+        return ajaxResult;
     }
 
 

--
Gitblit v1.9.1