From d749f488a802175dfa10851ebdffdb15c9bdeba8 Mon Sep 17 00:00:00 2001
From: Junjie <540245094@qq.com>
Date: 星期日, 24 十二月 2023 13:26:40 +0800
Subject: [PATCH] #提升机
---
src/main/java/com/zy/asrs/service/BasLiftOptService.java | 2 +-
src/main/java/com/zy/core/thread/LiftThread.java | 12 ++++++++----
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 16 +++++++++-------
src/main/resources/mapper/BasLiftOptMapper.xml | 1 +
src/main/java/com/zy/asrs/mapper/BasLiftOptMapper.java | 2 +-
src/main/java/com/zy/asrs/service/impl/BasLiftOptServiceImpl.java | 4 ++--
6 files changed, 22 insertions(+), 15 deletions(-)
diff --git a/src/main/java/com/zy/asrs/mapper/BasLiftOptMapper.java b/src/main/java/com/zy/asrs/mapper/BasLiftOptMapper.java
index c2ffef2..db07888 100644
--- a/src/main/java/com/zy/asrs/mapper/BasLiftOptMapper.java
+++ b/src/main/java/com/zy/asrs/mapper/BasLiftOptMapper.java
@@ -12,7 +12,7 @@
@Repository
public interface BasLiftOptMapper extends BaseMapper<BasLiftOpt> {
- BasLiftOpt selectByDeviceWrk(String deviceWrk);
+ BasLiftOpt selectByDeviceWrk(String deviceWrk, Integer liftNo);
List<Map<String, Object>> selectRunStatistic();//鑾峰彇鎻愬崌鏈烘瘡澶╄繍琛屾暟鎹�
diff --git a/src/main/java/com/zy/asrs/service/BasLiftOptService.java b/src/main/java/com/zy/asrs/service/BasLiftOptService.java
index 1f00488..b587e79 100644
--- a/src/main/java/com/zy/asrs/service/BasLiftOptService.java
+++ b/src/main/java/com/zy/asrs/service/BasLiftOptService.java
@@ -5,6 +5,6 @@
public interface BasLiftOptService extends IService<BasLiftOpt> {
- BasLiftOpt selectByDeviceWrk(String deviceWrk);
+ BasLiftOpt selectByDeviceWrk(String deviceWrk, Integer liftNo);
}
diff --git a/src/main/java/com/zy/asrs/service/impl/BasLiftOptServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/BasLiftOptServiceImpl.java
index 8761a1d..b9be9da 100644
--- a/src/main/java/com/zy/asrs/service/impl/BasLiftOptServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/BasLiftOptServiceImpl.java
@@ -10,7 +10,7 @@
public class BasLiftOptServiceImpl extends ServiceImpl<BasLiftOptMapper, BasLiftOpt> implements BasLiftOptService {
@Override
- public BasLiftOpt selectByDeviceWrk(String deviceWrk) {
- return this.baseMapper.selectByDeviceWrk(deviceWrk);
+ public BasLiftOpt selectByDeviceWrk(String deviceWrk, Integer liftNo) {
+ return this.baseMapper.selectByDeviceWrk(deviceWrk, liftNo);
}
}
diff --git a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
index 366bd54..2127fdc 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -5,6 +5,7 @@
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.core.common.Cools;
+import com.core.common.SpringUtils;
import com.core.exception.CoolException;
import com.zy.asrs.entity.*;
import com.zy.asrs.mapper.*;
@@ -1611,8 +1612,7 @@
NyLiftCommand liftCommand = NyLiftUtils.getLiftCommand(liftProtocol.getLiftNo().intValue(), NyLiftTaskModelType.MOVE_TRAY.id, startSta, targetSta, wrkMast.getWrkNo());
if (wrkMast.getIoType() == 53 || wrkMast.getIoType() == 57) {
//鎷f枡鍐嶅洖搴擄紝閲嶆柊鍒嗛厤璁惧宸ヤ綔鍙�
- Random random = new Random();
- int deviceWrk = Math.abs((liftCommand.getTaskNo().intValue() + random.nextInt(9999)));//鑾峰彇璁惧宸ヤ綔鍙�
+ int deviceWrk = commonService.getWorkNo(8);//鐢熸垚鎻愬崌鏈鸿澶囧伐浣滃彿
liftCommand.setTaskNo((short) deviceWrk);
}
ArrayList<NyLiftCommand> commands = new ArrayList<>();
@@ -1775,10 +1775,13 @@
&& liftProtocol.getTaskNo() != 0
&& !liftProtocol.getBusy()
) {
- BasLiftOpt basLiftOpt = basLiftOptService.selectByDeviceWrk(liftProtocol.getTaskNo().toString());
int taskNo = liftProtocol.getTaskNo().intValue();
- if (basLiftOpt != null) {
- taskNo = basLiftOpt.getWrkNo();
+ if (taskNo >= 20000 && taskNo <= 30000) {
+ //鎻愬崌鏈鸿澶囧伐浣滃彿锛岄渶瑕佹煡璇㈠搴斾换鍔″彿
+ BasLiftOpt basLiftOpt = basLiftOptService.selectByDeviceWrk(liftProtocol.getTaskNo().toString(), liftSlave.getId());
+ if (basLiftOpt != null) {
+ taskNo = basLiftOpt.getWrkNo();
+ }
}
//灏嗕换鍔℃。鏍囪涓哄畬鎴�
@@ -3523,8 +3526,7 @@
//鑾峰彇鎻愬崌鏈哄懡浠わ紝璋冨害鎻愬崌鏈哄埌婧愮珯浣嶇疆
NyLiftCommand liftCommand = NyLiftUtils.getLiftCommand(liftProtocol.getLiftNo().intValue(), NyLiftTaskModelType.MOVE_CAR.id, sourceLiftSta.getStaNo(), sourceLiftSta.getStaNo(), wrkMast.getWrkNo());
- Random random = new Random();
- int deviceWrk = Math.abs((liftCommand.getTaskNo().intValue() + random.nextInt(9999)));//鑾峰彇璁惧宸ヤ綔鍙�
+ int deviceWrk = commonService.getWorkNo(8);//鐢熸垚鎻愬崌鏈鸿澶囧伐浣滃彿
liftCommand.setTaskNo((short) deviceWrk);//鏇存崲闅忔満浠诲姟鍙�
ArrayList<NyLiftCommand> commands = new ArrayList<>();
diff --git a/src/main/java/com/zy/core/thread/LiftThread.java b/src/main/java/com/zy/core/thread/LiftThread.java
index d61e0fa..a9f40e5 100644
--- a/src/main/java/com/zy/core/thread/LiftThread.java
+++ b/src/main/java/com/zy/core/thread/LiftThread.java
@@ -351,11 +351,15 @@
return false;
}
- BasLiftOptService basLiftOptService = SpringUtils.getBean(BasLiftOptService.class);
- BasLiftOpt basLiftOpt = basLiftOptService.selectByDeviceWrk(liftProtocol.getTaskNo().toString());
- if (basLiftOpt != null) {
- wrkNo = basLiftOpt.getWrkNo().shortValue();
+ if (wrkNo >= 20000 && wrkNo <= 30000) {
+ //鎻愬崌鏈鸿澶囧伐浣滃彿锛岄渶瑕佹煡璇㈠搴斾换鍔″彿
+ BasLiftOptService basLiftOptService = SpringUtils.getBean(BasLiftOptService.class);
+ BasLiftOpt basLiftOpt = basLiftOptService.selectByDeviceWrk(liftProtocol.getTaskNo().toString(), liftProtocol.getLiftNo().intValue());
+ if (basLiftOpt != null) {
+ wrkNo = basLiftOpt.getWrkNo().shortValue();
+ }
}
+
Object o = redisUtil.get(RedisKeyType.LIFT.key + wrkNo);
if (o == null) {
return false;
diff --git a/src/main/resources/mapper/BasLiftOptMapper.xml b/src/main/resources/mapper/BasLiftOptMapper.xml
index d6c1a60..95670b0 100644
--- a/src/main/resources/mapper/BasLiftOptMapper.xml
+++ b/src/main/resources/mapper/BasLiftOptMapper.xml
@@ -20,6 +20,7 @@
<select id="selectByDeviceWrk" resultMap="BaseResultMap">
select top 1 * from asr_bas_lift_opt
where device_wrk = #{deviceWrk}
+ and lift_no = #{liftNo}
order by send_time desc
</select>
--
Gitblit v1.9.1