Helius
2021-01-12 c9b157e19d101fd2d9a79c3db673f0c2cacd481c
modify
4 files modified
65 ■■■■■ changed files
zq-erp/src/main/java/com/matrix/system/hive/action/OrderController.java 23 ●●●● patch | view | raw | blame | history
zq-erp/src/main/java/com/matrix/system/hive/bean/SysOrderItem.java 13 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/java/com/matrix/system/hive/service/SysOrderService.java 2 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysOrderServiceImpl.java 27 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/java/com/matrix/system/hive/action/OrderController.java
@@ -125,9 +125,25 @@
    }
    /**
     * 退款
     *
     * @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 = orderService.checkAndSaveOrder(sysOrder);
        orderService.refundOrderMoney(sysOrder);
        //处理用户购买的产品
        return AjaxResult.buildSuccessInstance(Arrays.asList(sysOrder), "订单退款成功");
    }
    /**
@@ -144,7 +160,6 @@
        //处理用户购买的产品
        return AjaxResult.buildSuccessInstance(Arrays.asList(sysOrder), "订单保存成功");
    }
    /**
     * 新建订单
zq-erp/src/main/java/com/matrix/system/hive/bean/SysOrderItem.java
@@ -124,6 +124,19 @@
    private ShoppingGoods shoppingGoods;
    /**
     * 原有数量
     */
    private int preCount;
    public int getPreCount() {
        return preCount;
    }
    public void setPreCount(int preCount) {
        this.preCount = preCount;
    }
    public ShoppingGoods getShoppingGoods() {
        return shoppingGoods;
    }
zq-erp/src/main/java/com/matrix/system/hive/service/SysOrderService.java
@@ -84,6 +84,8 @@
     */
    public void updateReceiptMoney(SysOrder sysOrder) throws GlobleException;
    public void refundOrderMoney(SysOrder sysOrder);
    /**
     * 创建订单
     * @param session
zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysOrderServiceImpl.java
@@ -167,6 +167,14 @@
        // 页面的pageOrder 参数只包含支付金额信息,不带有购买商品
        for (SysOrderItem item : sysOrder.getItems()) {
            // 若为退款,则先更新原有数量
            if (orderStatus.equals(Dictionary.ORDER_STATU_TK)) {
                SysOrderItem sysOrderItem = new SysOrderItem();
                sysOrderItem.setId(item.getId());
                sysOrderItem.setCount(item.getPreCount() - item.getCount());
                orderItemDao.update(sysOrderItem);
            }
            item.setId(null);
            ShoppingGoods shoppingGoods = shoppingGoodsDao.selectById(item.getGoodsId());
            item.setType(shoppingGoods.getGoodType());
@@ -1215,4 +1223,23 @@
    public List<RankingVo> findStaffSaleAchieveRanking(SysOrder sysOrder) {
        return sysOrderDao.selectStaffSaleAchieveRanking(sysOrder);
    }
    @Override
    public void refundOrderMoney(SysOrder pageOrder) {
        changeOrderStatu(pageOrder);
        // 设置会员充值卡使用情况
        addMoneyCardUse(pageOrder);
        // 新增出库单
        addOutStore(pageOrder);
        // 改变客户项目套餐使用情况
        addTaocanProj(pageOrder);
        // 设置业绩
        achieveNewService.addAchaeveByOrder(pageOrder);
        setShopSelCount(pageOrder);
    }
}