From 6d356442b2209d17869a4156356ecfa3a8321e74 Mon Sep 17 00:00:00 2001
From: futian.liu <liufutianyoo@163.com>
Date: 星期四, 21 十二月 2023 15:29:07 +0800
Subject: [PATCH] 调拨撤销时进行状态检查

---
 consum-base/src/main/java/com/consum/base/core/type/TransferStatesType.java            |   52 ++++++++++++++++++++++++++
 consum-base/src/main/java/com/consum/base/controller/LWhFormTransferController.java    |    5 ++
 consum-base/src/main/java/com/consum/base/service/impl/LWhFormTransferCoreService.java |   11 +----
 consum-base/src/main/java/com/consum/base/service/impl/LWhFormTransferServiceImpl.java |    5 +-
 4 files changed, 63 insertions(+), 10 deletions(-)

diff --git a/consum-base/src/main/java/com/consum/base/controller/LWhFormTransferController.java b/consum-base/src/main/java/com/consum/base/controller/LWhFormTransferController.java
index 3390647..27149d7 100644
--- a/consum-base/src/main/java/com/consum/base/controller/LWhFormTransferController.java
+++ b/consum-base/src/main/java/com/consum/base/controller/LWhFormTransferController.java
@@ -25,6 +25,7 @@
 import com.consum.base.BaseController;
 import com.consum.base.core.WhBusinessEnum;
 import com.consum.base.core.type.StatesType;
+import com.consum.base.core.type.TransferStatesType;
 import com.consum.base.core.utils.CommonUtil;
 import com.consum.base.core.utils.IdUtil;
 import com.consum.base.pojo.GoodsUseRecordVO;
@@ -254,6 +255,10 @@
         if (id == null) {
             return ResponseValue.error("鍙傛暟閿欒");
         }
+        LWhFormTransfer lWhFormTransfer = lWhFormTransferService.selectById(id);
+        if (lWhFormTransfer.getStates() != TransferStatesType.OUT_PENDING.getValue()) {
+            return ResponseValue.error("鐘舵�侀敊璇紝涓嶈兘鎾ら攢");
+        }
 
         int num = this.lWhFormTransferService.updateStatus(id);
         return num > 0 ? ResponseValue.success(1) : ResponseValue.error("淇敼澶辫触锛�");
diff --git a/consum-base/src/main/java/com/consum/base/core/type/TransferStatesType.java b/consum-base/src/main/java/com/consum/base/core/type/TransferStatesType.java
new file mode 100644
index 0000000..a8ff3c1
--- /dev/null
+++ b/consum-base/src/main/java/com/consum/base/core/type/TransferStatesType.java
@@ -0,0 +1,52 @@
+package com.consum.base.core.type;
+
+/**
+ * fff
+ *
+ * @author asus
+ * @version 2023/12/21 15:10
+ **/
+public enum TransferStatesType {
+
+    /**
+     * 寰呭嚭搴�
+     */
+    OUT_PENDING(0, "寰呭嚭搴�"),
+    /**
+     * 寰呮帴鏀�
+     */
+    RECEIVE_ING(1, "寰呮帴鏀�"),
+    /**
+     * 宸插叆搴�
+     */
+    SUCCESS(2, "宸插叆搴�"),
+    /**
+     * 宸叉挙閿�
+     */
+    CANCEL(4, "宸叉挙閿�");
+
+    private Integer value;
+
+    private String desc;
+
+    TransferStatesType(Integer value, String desc) {
+        this.value = value;
+        this.desc = desc;
+    }
+
+    public Integer getValue() {
+        return value;
+    }
+
+    public void setValue(Integer value) {
+        this.value = value;
+    }
+
+    public String getDesc() {
+        return desc;
+    }
+
+    public void setDesc(String desc) {
+        this.desc = desc;
+    }
+}
diff --git a/consum-base/src/main/java/com/consum/base/service/impl/LWhFormTransferCoreService.java b/consum-base/src/main/java/com/consum/base/service/impl/LWhFormTransferCoreService.java
index 6a2114d..359084a 100644
--- a/consum-base/src/main/java/com/consum/base/service/impl/LWhFormTransferCoreService.java
+++ b/consum-base/src/main/java/com/consum/base/service/impl/LWhFormTransferCoreService.java
@@ -16,6 +16,7 @@
 
 import com.consum.base.core.WhBusinessEnum;
 import com.consum.base.core.service.LWhWarningCoreServiceImpl;
+import com.consum.base.core.type.TransferStatesType;
 import com.consum.base.core.utils.IdUtil;
 import com.consum.base.core.utils.LockManage;
 import com.consum.base.service.BaseGoodsTemplateService;
@@ -286,7 +287,7 @@
         lWhFormTransfer = new LWhFormTransfer(whFormTransferId);
         // 璋冩嫧鍗曚笉鍐嶅叧鑱斿嚭鍏ュ簱鍗�
         // lWhFormTransfer.setOutWarehouseFormId(outWarehouseFormId);
-        lWhFormTransfer.setStates(1);
+        lWhFormTransfer.setStates(TransferStatesType.RECEIVE_ING.getValue());
         lWhFormTransfer.setOutOperatorId(userId);
         lWhFormTransfer.setOutOperatorName(nickName);
         lWhFormTransfer.setOutputTime(dealTime);
@@ -389,12 +390,6 @@
                 lWhGoodsService.modGoodsTransfering(outGoodsIds, inWarehouseType, inWarehouseId, inWarehouseName,
                     goodsStatus);
 
-                // 閫氳繃鐗╁搧id鏌ヨ鎵�鏈夊晢鍝佺殑鎬婚噾棰�
-                // long amount = lWhGoodsService.queryGoodsPriceById(outGoodsIds);
-                // LWhProcureModel lWhFormScrappedGoods = new LWhProcureModel(formScrappedGood.getId());
-                // lWhFormScrappedGoods.setTotalAmount(amount);
-                // lWhFormTransferService.update(lWhFormScrappedGoods);
-
                 whGoodsRecord.setInitialCount(goodsModelNum);
                 whGoodsRecord.setEndCount(goodsModelNum + whGoodsRecord.getThisCount());
                 long totalAmount = lWhGoodsService.queryGoodsPriceById(outGoodsIds);
@@ -474,7 +469,7 @@
         lWhFormTransfer = new LWhFormTransfer(whFormTransferId);
         lWhFormTransfer.setInWarehouseFlowId(inWarehouseFlowId);
         lWhFormTransfer.setInWarehouseFormId(null);
-        lWhFormTransfer.setStates(2);
+        lWhFormTransfer.setStates(TransferStatesType.SUCCESS.getValue());
         if (StringUtils.isEmpty(inOperatorName)) {
             lWhFormTransfer.setInOperatorId(userId);
             lWhFormTransfer.setInOperatorName(nickName);
diff --git a/consum-base/src/main/java/com/consum/base/service/impl/LWhFormTransferServiceImpl.java b/consum-base/src/main/java/com/consum/base/service/impl/LWhFormTransferServiceImpl.java
index b0e3d5e..383bc3c 100644
--- a/consum-base/src/main/java/com/consum/base/service/impl/LWhFormTransferServiceImpl.java
+++ b/consum-base/src/main/java/com/consum/base/service/impl/LWhFormTransferServiceImpl.java
@@ -21,6 +21,7 @@
 import com.consum.base.core.type.CategoryType;
 import com.consum.base.core.type.StatesType;
 import com.consum.base.core.type.TransferBusinessType;
+import com.consum.base.core.type.TransferStatesType;
 import com.consum.base.core.type.WareHouseType;
 import com.consum.base.core.utils.CurrencyUtil;
 import com.consum.base.core.utils.IdUtil;
@@ -178,7 +179,7 @@
         lWhFormTransfer.setOperatorName(sysInfo.getUserName());
         lWhFormTransfer.setCreateTime(param.getCreateTime());
         // 0=寰呭嚭搴擄紱1=寰呮帴鏀讹紱2=宸插叆搴撳簱:4=宸叉挙閿�
-        lWhFormTransfer.setStates(0);
+        lWhFormTransfer.setStates(TransferStatesType.OUT_PENDING.getValue());
         lWhFormTransfer.setProcureDoc(param.getProcureDoc());
 
         int flag1 = this.insert(lWhFormTransfer);
@@ -544,7 +545,7 @@
      */
     public int updateStatus(Long id) {
         LWhFormTransfer lWhFormTransfer = new LWhFormTransfer(id);
-        lWhFormTransfer.setStates(4);
+        lWhFormTransfer.setStates(TransferStatesType.CANCEL.getValue());
         return this.update(lWhFormTransfer);
     }
 

--
Gitblit v1.9.1