From a72aa4bb793ec765892406c842039a71b33215b1 Mon Sep 17 00:00:00 2001 From: Helius <wangdoubleone@gmail.com> Date: Thu, 11 Mar 2021 18:12:22 +0800 Subject: [PATCH] modify --- zq-erp/src/main/resources/mybatis/mapper/hive/SysProjServicesDao.xml | 6 +++ zq-erp/src/main/java/com/matrix/system/hive/action/OrderController.java | 15 +++++-- zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/underlineOrder.html | 6 ++ zq-erp/src/main/java/com/matrix/system/hive/dao/SysProjServicesDao.java | 2 + zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysOrderServiceImpl.java | 36 +++++++---------- 5 files changed, 38 insertions(+), 27 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 6c2af22..e1f1896 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 cn.hutool.core.collection.CollUtil; import com.matrix.component.rabbitmq.RabiitMqTemplate; import com.matrix.core.constance.MatrixConstance; import com.matrix.core.exception.GlobleException; @@ -95,10 +96,8 @@ RabiitMqTemplate rabiitMqTemplate; @Autowired - private SysProjUseDao sysProjUseDao; + private SysProjServicesDao sysProjServicesDao; - @Autowired - private SysProjServicesService projServicesService; @Value("${evn}") private String evn; @@ -479,8 +478,14 @@ return new AjaxResult(AjaxResult.STATUS_FAIL, "订单不存在!"); } -// SysProjServices sysProjServices = new SysProjServices(); -// projServicesService.findByModel() + List<SysOrderItem> items = orderItemDao.selectByOrderId(id); + for (SysOrderItem item : items) { + List<SysProjServices> sysProjServices = sysProjServicesDao.selectProjServicesByOrderItemId(item.getId()); + if (CollUtil.isNotEmpty(sysProjServices)) { + return new AjaxResult(AjaxResult.STATUS_FAIL, "订单存在进行中的服务单无法取消/删除"); + } + } + orderService.cancelOrder(id); // if (del > 0) { // orderService.removeById(id); diff --git a/zq-erp/src/main/java/com/matrix/system/hive/dao/SysProjServicesDao.java b/zq-erp/src/main/java/com/matrix/system/hive/dao/SysProjServicesDao.java index 90c2647..4266fb8 100644 --- a/zq-erp/src/main/java/com/matrix/system/hive/dao/SysProjServicesDao.java +++ b/zq-erp/src/main/java/com/matrix/system/hive/dao/SysProjServicesDao.java @@ -68,4 +68,6 @@ * @return */ int updateNoticeTimes(@Param("list")List<Long> noticedIds); + + List<SysProjServices> selectProjServicesByOrderItemId(@Param("itemId") Long itemId); } \ No newline at end of file diff --git a/zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysOrderServiceImpl.java b/zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysOrderServiceImpl.java index 948baf0..7fac417 100644 --- a/zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysOrderServiceImpl.java +++ b/zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysOrderServiceImpl.java @@ -278,23 +278,22 @@ throw new GlobleException("订单已取消"); } - List<SysOrderItem> sysOrderItems = orderItemDao.selectByOrderId(id); + List<SysOrderFlow> flows = sysOrderFlowDao.selectByOrderId(id); + // 非现金收款退回扣卡余额 + for (SysOrderFlow flow : flows) { + if (SysOrderFlow.PAY_METHOD_CARD.equals(flow.getPayMethod())) { - for (SysOrderItem orderItem : sysOrderItems) { - - //非现金收款退回扣卡余额 - if (StringUtils.isNotBlank(orderItem.getPayMethodDetail())) { - - MoneyCardUse moneyCardUse = moneyCardUseDao.selectById(Long.parseLong(orderItem.getPayMethodDetail())); + MoneyCardUse moneyCardUse = moneyCardUseDao.selectById(flow.getCardId()); MoneyCardUseFlow moneyCardUseFlow = new MoneyCardUseFlow(); if (moneyCardUse != null) { - // 根据订单明细判断是赠送金额购买还是本金购买 - - moneyCardUseFlow.setTotal(orderItem.getCardPay()); - moneyCardUse.setRealMoney(MoneyUtil.add(moneyCardUse.getRealMoney(), orderItem.getCardPay())); - //TODO 目前无法退回到具体的赠送金额还是本金 + moneyCardUseFlow.setTotal(flow.getAmount().doubleValue()); + if (SysOrderFlow.IS_GIFT_Y.equals(flow.getIsGift())) { + moneyCardUse.setGiftMoney(MoneyUtil.add(moneyCardUse.getGiftMoney(), flow.getAmount().doubleValue())); + } else { + moneyCardUse.setRealMoney(MoneyUtil.add(moneyCardUse.getRealMoney(), flow.getAmount().doubleValue())); + } if (!moneyCardUse.getIsVipCar().equals(Dictionary.FLAG_YES_Y)) { if (moneyCardUse.getLastCount() != null) { @@ -316,29 +315,26 @@ moneyCardUseFlowDao.insert(moneyCardUseFlow); } } + } + + List<SysOrderItem> sysOrderItems = orderItemDao.selectByOrderId(id); + for (SysOrderItem orderItem : sysOrderItems) { // 充值卡类型退款 if (Dictionary.SHOPPING_GOODS_TYPE_CZK.equals(orderItem.getType())) { - ShoppingGoods shoppingGoods = shoppingGoodsDao.selectById(orderItem.getGoodsId()); - - //删除购买的充值卡 moneyCardUseDao.deleteByOrderItemId(orderItem.getId()); - } else if (Dictionary.SHOPPING_GOODS_TYPE_XM.equals(orderItem.getType()) || Dictionary.SHOPPING_GOODS_TYPE_TC.equals(orderItem.getType())) { // 项目套餐退款 // 删除套餐项目使用情况 sysProjUseDao.deleteByOrderItemId(orderItem.getId()); - - } else if (Dictionary.SHOPPING_GOODS_TYPE_ZHK.equals(orderItem.getType())) { // 综合卡 // 删除套餐项目使用情况 sysProjUseDao.deleteByOrderItemId(orderItem.getId()); // 删除充值卡 moneyCardUseDao.deleteByOrderItemId(orderItem.getId()); - } } @@ -368,8 +364,6 @@ // 取消订单 order.setStatu(Dictionary.ORDER_STATU_YQX); - - return sysOrderDao.update(order); } diff --git a/zq-erp/src/main/resources/mybatis/mapper/hive/SysProjServicesDao.xml b/zq-erp/src/main/resources/mybatis/mapper/hive/SysProjServicesDao.xml index cdb7e50..28022f2 100644 --- a/zq-erp/src/main/resources/mybatis/mapper/hive/SysProjServicesDao.xml +++ b/zq-erp/src/main/resources/mybatis/mapper/hive/SysProjServicesDao.xml @@ -700,4 +700,10 @@ </select> + <select id="selectProjServicesByOrderItemId" resultMap="SysProjServicesMap"> + select a.* from sys_proj_services a + inner join sys_beautician_state b on a.id=b.SERVICES_ID + inner join sys_proj_use c on c.id=b.puse_id + where ORDER_ITEM_ID=#{itemId} and a.STATE!='预约取消' + </select> </mapper> diff --git a/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/underlineOrder.html b/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/underlineOrder.html index 71fde37..b69b459 100644 --- a/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/underlineOrder.html +++ b/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/underlineOrder.html @@ -223,7 +223,11 @@ btn: ['确认', '取消并删除', '取消'] //可以无限个按钮 }, function(index, layero){ $.post(basePath+'/admin/order/cancelOrder?id='+id+'&del=0', {}, function(data){ - parent.layer.msg(data.info,{icon: 1}); + if (data.status == '200') { + parent.layer.msg(data.info,{icon: 1}); + } else { + parent.layer.msg(data.info,{icon: 2}); + } layer.closeAll(); myGrid.serchData(); }); -- Gitblit v1.9.1