From ab2879bbcb846256cc182198b9c04e50fbc276c1 Mon Sep 17 00:00:00 2001
From: jyy <935090232@qq.com>
Date: Tue, 26 Jan 2021 14:15:42 +0800
Subject: [PATCH] 1、新增消息推送提醒 2、修改业绩计算bug

---
 zq-erp/src/main/java/com/matrix/system/hive/action/OrderController.java |  135 ++++++++++++++++++++++++++++++++-------------
 1 files changed, 96 insertions(+), 39 deletions(-)

diff --git a/zq-erp/src/main/java/com/matrix/system/hive/action/OrderController.java b/zq-erp/src/main/java/com/matrix/system/hive/action/OrderController.java
index ccdc352..7289374 100644
--- a/zq-erp/src/main/java/com/matrix/system/hive/action/OrderController.java
+++ b/zq-erp/src/main/java/com/matrix/system/hive/action/OrderController.java
@@ -1,5 +1,6 @@
 package com.matrix.system.hive.action;
 
+import com.matrix.component.rabbitmq.RabiitMqTemplate;
 import com.matrix.core.constance.MatrixConstance;
 import com.matrix.core.exception.GlobleException;
 import com.matrix.core.pojo.AjaxResult;
@@ -15,22 +16,19 @@
 import com.matrix.system.constance.Dictionary;
 import com.matrix.system.constance.SystemConstance;
 import com.matrix.system.hive.action.util.QueryUtil;
-import com.matrix.system.hive.bean.AchieveNew;
-import com.matrix.system.hive.bean.MoneyCardUse;
-import com.matrix.system.hive.bean.SysOrder;
-import com.matrix.system.hive.bean.SysOrderItem;
+import com.matrix.system.hive.bean.*;
 import com.matrix.system.hive.dao.MoneyCardUseDao;
 import com.matrix.system.hive.dao.SysOrderDao;
 import com.matrix.system.hive.dao.SysOrderItemDao;
 import com.matrix.system.hive.dao.SysShopInfoDao;
-import com.matrix.system.hive.plugin.util.DateUtils;
+import com.matrix.core.tools.DateUtil;
 import com.matrix.system.hive.pojo.ShoppingCarItem;
 import com.matrix.system.hive.pojo.ShoppingCarItemsVo;
-import com.matrix.system.hive.service.AchieveNewService;
-import com.matrix.system.hive.service.MoneyCardUseService;
-import com.matrix.system.hive.service.SysOrderItemService;
-import com.matrix.system.hive.service.SysOrderService;
+import com.matrix.system.hive.service.*;
+import com.matrix.system.shopXcx.mqTask.MQTaskRouting;
+import com.matrix.system.wechart.templateMsg.UniformMsgParam;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Controller;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.ui.ModelMap;
@@ -48,6 +46,7 @@
 import java.net.URLEncoder;
 import java.util.ArrayList;
 import java.util.Arrays;
+import java.util.Date;
 import java.util.List;
 
 /**
@@ -83,6 +82,16 @@
     @Autowired
     SysShopInfoDao shopInfoDao;
 
+    @Autowired
+    private SysVipInfoService sysVipInfoService;
+
+    @Autowired
+    private SysOrderFlowService sysOrderFlowService;
+
+    @Autowired
+    RabiitMqTemplate rabiitMqTemplate;
+    @Value("${evn}")
+    private String evn;
 
     /**
      * 计算订单金额
@@ -120,14 +129,38 @@
         //校验订单是否满足结算调价,新订单则保存订单,已有订单则删除后更新
         sysOrder = orderService.checkAndSaveOrder(sysOrder);
         orderService.updateReceiptMoney(sysOrder);
+
+        //发送微信公众号提醒
+//        UniformMsgParam uniformMsgParam=new UniformMsgParam(user.getCompanyId(),UniformMsgParam.GZH_GMCG);
+//        uniformMsgParam.put("orderId",sysOrder.getId());
+//        rabiitMqTemplate.sendMsg(MQTaskRouting.SEND_UNIFORM_TEMPLATE_MSG+evn,uniformMsgParam.toJSONString());
+
+
         //处理用户购买的产品
         return AjaxResult.buildSuccessInstance(Arrays.asList(sysOrder), "订单结算成功");
     }
 
 
-
-
-
+    /**
+     * 退款
+     *
+     * @param sysOrder
+     * @return
+     */
+    @RequestMapping(value = "/refundOrder")
+    @ResponseBody
+    @Transactional(rollbackFor = Exception.class)
+    public AjaxResult refundOrder(@RequestBody SysOrder sysOrder) {
+        SysUsers user = getMe();
+        sysOrder.setShopId(user.getShopId());
+        sysOrder.setStatu(Dictionary.ORDER_STATU_TK);
+        sysOrder.setOrderTime(new Date());
+        //校验订单是否满足结算调价,新订单则保存订单,已有订单则删除后更新
+        sysOrder = orderService.checkAndSaveOrder(sysOrder);
+        orderService.refundOrderMoney(sysOrder);
+        //处理用户购买的产品
+        return AjaxResult.buildSuccessInstance(Arrays.asList(sysOrder), "订单退款成功");
+    }
 
 
     /**
@@ -144,7 +177,6 @@
         //处理用户购买的产品
         return AjaxResult.buildSuccessInstance(Arrays.asList(sysOrder), "订单保存成功");
     }
-
 
     /**
      * 新建订单
@@ -175,6 +207,9 @@
         }
         //设置过滤后的购物车条目
         car.setCarItems(carItems);
+
+        SysVipInfo info = (SysVipInfo) WebUtil.getSession().getAttribute(SystemConstance.CURRENT_CUSTOMER);
+        car.setVipId(info.getId());
 
         // 添加新订单
         int i = orderService.createOrder(WebUtil.getSession(), car);
@@ -353,6 +388,48 @@
         return "admin/hive/beautySalon/point-order";
     }
 
+    @RequestMapping(value = "/findOrderDetailByIdOrNo")
+    @ResponseBody
+    public AjaxResult findOrderDetailByIdOrNo(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;
+    }
+
     /**
      * 跳转 消费流水详情页面
      *
@@ -360,32 +437,12 @@
      */
     @RequestMapping(value = "/orderItem")
     public String orderItem(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);
 
-        WebUtil.getRequest().setAttribute("order", order);
-        // 根据会员Id查到会员有效的会员卡
-        // 根据订单号查找订单条目
-        SysOrderItem orderItem = new SysOrderItem();
-        orderItem.setOrderId(order.getId());
-        List<SysOrderItem> orderItems = orderItemService.findByModel(orderItem);
-        WebUtil.getRequest().setAttribute("orderItems", orderItems);
-
-        MoneyCardUse moneyCardUse = new MoneyCardUse();
-        moneyCardUse.setVipId(order.getVipId());
-        List<MoneyCardUse> cards = cardUseService.findByModel(moneyCardUse);
-
-        WebUtil.getRequest().setAttribute("cards", cards);
+        if(orderVo.getId()!=null){
+            WebUtil.getRequest().setAttribute("orderParam", orderVo.getId());
+        }else if(StringUtils.isNotBlank(orderVo.getOrderNo())){
+            WebUtil.getRequest().setAttribute("orderParam", orderVo.getOrderNo());
+        }
         return "admin/hive/beautySalon/orderXq-form";
     }
 
@@ -472,7 +529,7 @@
                 temp.add(item.getOrderNo());
                 temp.add(item.getVipName());
                 temp.add(item.getVipPhone());
-                temp.add(DateUtils.dateToString(item.getOrderTime(), DateUtils.DATE_FORMAT_MM));
+                temp.add(DateUtil.dateToString(item.getOrderTime(), DateUtil.DATE_FORMAT_MM));
                 temp.add(item.getTotal());
                 temp.add(item.getZkTotal());
                 temp.add(item.getCashPay());

--
Gitblit v1.9.1