From efabc6ba991acfd01d38bb0bf4e8cfd772416617 Mon Sep 17 00:00:00 2001
From: vincentlu <t1341870251@gmail.com>
Date: 星期一, 05 一月 2026 13:07:39 +0800
Subject: [PATCH] #
---
zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/LocServiceImpl.java | 117 +++++-----------------------------------------------------
1 files changed, 11 insertions(+), 106 deletions(-)
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/LocServiceImpl.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/LocServiceImpl.java
index d73227f..d869bea 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/LocServiceImpl.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/LocServiceImpl.java
@@ -3,12 +3,6 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.zy.acs.manager.manager.entity.Loc;
-import com.zy.acs.manager.manager.entity.Sta;
-import com.zy.acs.manager.manager.entity.Task;
-import com.zy.acs.manager.manager.enums.LocStsType;
-import com.zy.acs.manager.manager.enums.StaStsType;
-import com.zy.acs.manager.manager.enums.TaskStsType;
-import com.zy.acs.manager.manager.enums.TaskTypeType;
import com.zy.acs.manager.manager.mapper.LocMapper;
import com.zy.acs.manager.manager.service.LocService;
import com.zy.acs.manager.manager.service.StaService;
@@ -16,10 +10,8 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
-import java.util.Date;
import java.util.List;
import java.util.Map;
-import java.util.Objects;
@Slf4j
@Service("locService")
@@ -29,7 +21,7 @@
private StaService staService;
@Override
- public Loc selecatByLocNo(String locNo) {
+ public Loc selectByLocNo(String locNo) {
return this.getOne(new LambdaQueryWrapper<Loc>().eq(Loc::getLocNo, locNo));
}
@@ -44,104 +36,17 @@
}
@Override
- public void taskCallBack(Task task) {
- if (null == task) {
- return;
+ public Loc selectRandOneByLocSts(Long locSts, Integer limit) {
+ List<Loc> locList = this.selectRandByLocSts(locSts, limit);
+ return locList.stream().findFirst().orElse(null);
+ }
+
+ @Override
+ public List<Loc> selectRandByLocSts(Long locSts, Integer limit) {
+ if (locSts == null) {
+ return null;
}
- if (!task.getTaskSts().equals(TaskStsType.PROGRESS.val())) {
- return;
- }
- Date now = new Date();
- // loc status
- Loc oriLoc = null;
- Loc destLoc = null;
- Sta oriSta = null;
- Sta destSta = null;
- switch (Objects.requireNonNull(TaskTypeType.get(task.getTaskTypeEl()))) {
- case LOC_TO_LOC:
- oriLoc = this.getById(task.getOriLoc());
- if (oriLoc.getLocSts().equals(LocStsType.PAKOUT.val())) {
- oriLoc.setLocSts(LocStsType.IDLE.val());
- oriLoc.setUpdateTime(now);
- if (!this.updateById(oriLoc)) {
- log.error("Loc [{}] 搴撲綅淇敼鐘舵�佸け璐�", task.getOriLoc$());
- }
- }
-
- destLoc = this.getById(task.getDestLoc());
- if (destLoc.getLocSts().equals(LocStsType.PAKIN.val())) {
- destLoc.setLocSts(LocStsType.STOCK.val());
- destLoc.setUpdateTime(now);
- if (!this.updateById(destLoc)) {
- log.error("Loc [{}] 搴撲綅淇敼鐘舵�佸け璐�", task.getDestLoc$());
- }
- }
- break;
- case LOC_TO_STA:
- oriLoc = this.getById(task.getOriLoc());
- if (oriLoc.getLocSts().equals(LocStsType.PAKOUT.val())) {
- oriLoc.setLocSts(LocStsType.IDLE.val());
- oriLoc.setUpdateTime(now);
- if (!this.updateById(oriLoc)) {
- log.error("Loc [{}] 搴撲綅淇敼鐘舵�佸け璐�", task.getOriLoc$());
- }
- }
-
- destSta = staService.getById(task.getDestSta());
- if (destSta.getStaSts().equals(StaStsType.READY_RELEASE.val())) {
- destSta.setStaSts(StaStsType.STOCK.val());
- destSta.setUpdateTime(now);
- if (!staService.updateById(destSta)) {
- log.error("Sta [{}] 绔欑偣淇敼鐘舵�佸け璐�", task.getDestSta$());
- }
- }
- break;
- case STA_TO_LOC:
- oriSta = staService.getById(task.getOriSta());
- if (oriSta.getStaSts().equals(StaStsType.READY_TAKE.val())) {
- oriSta.setStaSts(StaStsType.IDLE.val());
- oriSta.setUpdateTime(now);
- if (!staService.updateById(oriSta)) {
- log.error("Sta [{}] 绔欑偣淇敼鐘舵�佸け璐�", task.getOriSta$());
- }
- }
-
- destLoc = this.getById(task.getDestLoc());
- if (destLoc.getLocSts().equals(LocStsType.PAKIN.val())) {
- destLoc.setLocSts(LocStsType.STOCK.val());
- destLoc.setUpdateTime(now);
- if (!this.updateById(destLoc)) {
- log.error("Loc [{}] 搴撲綅淇敼鐘舵�佸け璐�", task.getDestLoc$());
- }
- }
- break;
- case STA_TO_STA:
- oriSta = staService.getById(task.getOriSta());
- if (oriSta.getStaSts().equals(StaStsType.READY_TAKE.val())) {
- oriSta.setStaSts(StaStsType.IDLE.val());
- oriSta.setUpdateTime(now);
- if (!staService.updateById(oriSta)) {
- log.error("Sta [{}] 绔欑偣淇敼鐘舵�佸け璐�", task.getOriSta$());
- }
- }
-
- destSta = staService.getById(task.getDestSta());
- if (destSta.getStaSts().equals(StaStsType.READY_RELEASE.val())) {
- destSta.setStaSts(StaStsType.STOCK.val());
- destSta.setUpdateTime(now);
- if (!staService.updateById(destSta)) {
- log.error("Sta [{}] 绔欑偣淇敼鐘舵�佸け璐�", task.getDestSta$());
- }
- }
- break;
- case TO_CHARGE:
- case TO_STANDBY:
- case MOVE:
- break;
- default:
- break;
- }
-
+ return this.baseMapper.selectRandByLocSts(locSts, limit);
}
}
--
Gitblit v1.9.1