From dcf49806e12b014cf6471910814fdbcb6f494c44 Mon Sep 17 00:00:00 2001
From: vincentlu <t1341870251@gmail.com>
Date: 星期一, 27 四月 2026 09:11:01 +0800
Subject: [PATCH] #
---
zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/StaReserveServiceImpl.java | 32 ++++++++++++++++++++++++--------
1 files changed, 24 insertions(+), 8 deletions(-)
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/StaReserveServiceImpl.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/StaReserveServiceImpl.java
index 7c6c9a9..dd9db0e 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/StaReserveServiceImpl.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/StaReserveServiceImpl.java
@@ -9,10 +9,7 @@
import com.zy.acs.manager.manager.entity.Sta;
import com.zy.acs.manager.manager.entity.StaReserve;
import com.zy.acs.manager.manager.entity.Task;
-import com.zy.acs.manager.manager.enums.StaReserveStateType;
-import com.zy.acs.manager.manager.enums.StaReserveType;
-import com.zy.acs.manager.manager.enums.StatusType;
-import com.zy.acs.manager.manager.enums.TaskTypeType;
+import com.zy.acs.manager.manager.enums.*;
import com.zy.acs.manager.manager.mapper.StaMapper;
import com.zy.acs.manager.manager.mapper.StaReserveMapper;
import com.zy.acs.manager.manager.service.StaReserveService;
@@ -45,7 +42,14 @@
qty = Optional.ofNullable(qty).orElse(DEFAULT_QTY);
// reserve sta in
- if (staMapper.tryReserveIn(sta.getId(), qty) < qty) {
+ int changed;
+ StaTypeType staType = staService.resolveStaType(sta);
+ if (StaTypeType.ROLLER.equals(staType)) {
+ changed = staMapper.tryReserveInRoller(sta.getId(), qty);
+ } else {
+ changed = staMapper.tryReserveInCommon(sta.getId(), qty);
+ }
+ if (changed < qty) {
throw new BusinessException("Sta[" + sta.getStaNo() + "] can't reserve IN");
}
Date now = new Date();
@@ -79,7 +83,14 @@
qty = Optional.ofNullable(qty).orElse(DEFAULT_QTY);
// reserve sta out
- if (staMapper.tryReserveOut(sta.getId(), qty) < qty) {
+ StaTypeType staType = staService.resolveStaType(sta);
+ int changed;
+ if (StaTypeType.ROLLER.equals(staType)) {
+ changed = staMapper.tryReserveOutRoller(sta.getId(), qty);
+ } else {
+ changed = staMapper.tryReserveOutCommon(sta.getId(), qty);
+ }
+ if (changed < qty) {
throw new BusinessException("Sta[" + sta.getStaNo() + "] can't reserve OUT");
}
@@ -172,12 +183,17 @@
}
int cntOfDealWithReserve = 0;
+ StaTypeType staType = staService.resolveStaType(sta);
switch (type) {
case IN:
- cntOfDealWithReserve = staMapper.confirmReserveIn(sta.getId(), qty);
+ cntOfDealWithReserve = StaTypeType.ROLLER.equals(staType)
+ ? staMapper.confirmReserveInRoller(sta.getId(), qty)
+ : staMapper.confirmReserveInCommon(sta.getId(), qty);
break;
case OUT:
- cntOfDealWithReserve = staMapper.confirmReserveOut(sta.getId(), qty);
+ cntOfDealWithReserve = StaTypeType.ROLLER.equals(staType)
+ ? staMapper.confirmReserveOutRoller(sta.getId(), qty)
+ : staMapper.confirmReserveOutCommon(sta.getId(), qty);
break;
default:
break;
--
Gitblit v1.9.1