From e1ff283be2a6ca6ed8cead6248b4efa8eb005f6e Mon Sep 17 00:00:00 2001
From: JiangYouYao <ak473600000>
Date: Fri, 18 Mar 2022 13:51:29 +0800
Subject: [PATCH] 重构:订单取消逻辑

---
 zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysOutStoreServiceImpl.java |   29 +++++++++++++++++++++--------
 1 files changed, 21 insertions(+), 8 deletions(-)

diff --git a/zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysOutStoreServiceImpl.java b/zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysOutStoreServiceImpl.java
index 5e431ab..3d3c73e 100644
--- a/zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysOutStoreServiceImpl.java
+++ b/zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysOutStoreServiceImpl.java
@@ -3,30 +3,23 @@
 import com.matrix.core.constance.MatrixConstance;
 import com.matrix.core.exception.GlobleException;
 import com.matrix.core.pojo.PaginationVO;
-
-
-import com.matrix.core.tools.DateUtil;
-import com.matrix.core.tools.LogUtil;
 import com.matrix.core.tools.WebUtil;
 import com.matrix.system.common.bean.SysUsers;
 import com.matrix.system.constance.Dictionary;
 import com.matrix.system.hive.bean.SysOutStore;
 import com.matrix.system.hive.bean.SysOutStoreItem;
-import com.matrix.system.hive.bean.SysShopInfo;
 import com.matrix.system.hive.bean.SysStoreInfo;
 import com.matrix.system.hive.dao.SysOutStoreDao;
 import com.matrix.system.hive.dao.SysOutStoreItemDao;
 import com.matrix.system.hive.dao.SysStoreInfoDao;
 import com.matrix.system.hive.service.CodeService;
 import com.matrix.system.hive.service.SysOutStoreService;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
-import org.springframework.beans.factory.annotation.Autowired;
 
 import java.util.ArrayList;
-import java.util.Date;
 import java.util.List;
-import java.util.Random;
 
 /**
  * @date 2016-07-25 12:43
@@ -143,7 +136,27 @@
 
     }
 
+
+    /**
+     * 取消出库单
+     * @param id
+     * @return
+     */
+    @Transactional(rollbackFor = Exception.class)
     @Override
+    public void cancelOutStore(Long id) {
+        List<SysOutStoreItem> outStoreItemList = sysOutStoreItemDao.selectByOrderId(id);
+        for (SysOutStoreItem item : outStoreItemList) {
+            SysStoreInfo sysStoreInfo = storeInfoDao.selectById(item.getStoreId());
+            sysStoreInfo.setStoreTotal(sysStoreInfo.getStoreTotal() + item.getAmount());
+            //更新库存
+            storeInfoDao.update(sysStoreInfo);
+        }
+        sysOutStoreDao.deleteById(id);
+        sysOutStoreItemDao.deleteByOrderId(id);
+    }
+
+        @Override
     public int effectOutStore(SysOutStore sysOutStore) {
 
         SysOutStore queryStore = sysOutStoreDao.selectById(sysOutStore.getId());

--
Gitblit v1.9.1