From c979722dffe66a92ebdf5c5e27afb401f49f2758 Mon Sep 17 00:00:00 2001
From: zhang <zc857179121@qq.com>
Date: 星期五, 13 六月 2025 13:00:36 +0800
Subject: [PATCH] 1
---
src/main/java/com/zy/asrs/mapper/TaskWrkMapper.java | 3 +
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 87 ++++++++++++++++++++++++++++++++++++++++++-
src/main/java/com/zy/asrs/service/TaskWrkService.java | 3 +
src/main/java/com/zy/asrs/service/impl/TaskWrkServiceImpl.java | 5 ++
src/main/java/com/zy/core/MainProcess.java | 5 ++
src/main/resources/mapper/TaskWrkMapper.xml | 10 ++++
src/main/java/com/zy/core/thread/SiemensDevpThread.java | 2
7 files changed, 110 insertions(+), 5 deletions(-)
diff --git a/src/main/java/com/zy/asrs/mapper/TaskWrkMapper.java b/src/main/java/com/zy/asrs/mapper/TaskWrkMapper.java
index 4b924b7..fad3a6e 100644
--- a/src/main/java/com/zy/asrs/mapper/TaskWrkMapper.java
+++ b/src/main/java/com/zy/asrs/mapper/TaskWrkMapper.java
@@ -14,6 +14,9 @@
public interface TaskWrkMapper extends BaseMapper<TaskWrk> {
TaskWrk selectByTaskNo(String taskNo);
+
+ TaskWrk selectByTargetPoint(@Param("targetPoint") String startPoint);
+
TaskWrk selectByStartPoint(@Param("startPoint") String startPoint);
TaskWrk selectByWrkNo(Integer wrkNo);
diff --git a/src/main/java/com/zy/asrs/service/TaskWrkService.java b/src/main/java/com/zy/asrs/service/TaskWrkService.java
index abf25b8..d76d12d 100644
--- a/src/main/java/com/zy/asrs/service/TaskWrkService.java
+++ b/src/main/java/com/zy/asrs/service/TaskWrkService.java
@@ -8,6 +8,9 @@
public interface TaskWrkService extends IService<TaskWrk> {
TaskWrk selectByTaskNo(String taskNo);
+
+ TaskWrk selectByTargetPoint(String taskNo);
+
TaskWrk selectByStartPoint(String taskNo);
TaskWrk selectByWrkNo(Integer wrkNo);
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 7ee9bc6..8e98ef9 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -867,9 +867,9 @@
// JSONObject jsonObject = JSON.parseObject(JSON.toJSONString(r));
// if (offer) {
// log.info("涓嬪彂杈撻�佺嚎浠诲姟鎴愬姛锛歵askWrk:" + JSON.toJSONString(taskWrk));
- taskWrk.setStatus(5);
- taskWrk.setWrkSts(14);
- taskWrkService.updateById(taskWrk);
+ taskWrk.setStatus(5);
+ taskWrk.setWrkSts(14);
+ taskWrkService.updateById(taskWrk);
// } else {
// log.error("涓嬪彂杈撻�佺嚎浠诲姟澶辫触锛歵askWrk:" + JSON.toJSONString(taskWrk));
@@ -1813,4 +1813,85 @@
// log.info(""+mark+" - 0"+" - 鎵ц瀹屾垚锛氬叾浠� ===>> LED鏄剧ず鍣ㄥ浣嶏紝鏄剧ず榛樿淇℃伅");
}
+
+ /**
+ * 鍏ュ嚭搴撴ā寮忓垏鎹㈠嚱鏁�
+ */
+ public synchronized void ioConvert() {
+ try {
+ // 鏍规嵁杈撻�佺嚎plc閬嶅巻
+ for (DevpSlave devp : slaveProperties.getDevp()) {
+ if (devp.getId() == 2) {
+ continue;
+ }
+ SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, devp.getId());
+ for (DevpSlave.Sta inSta : devp.getInSta()) {
+ TaskWrk taskWrk = taskWrkService.selectByTargetPoint(inSta.getBackSta() + "");
+ switch (inSta.getBackSta()) {
+ case 101:
+ if (taskWrk != null) {
+ if (devpThread.ioModeOf1F1 != IoModeType.PAKOUT_MODE) {
+ // 鍑哄簱鍒囨崲涓�
+ devpThread.ioModeOf1F1 = IoModeType.PAKOUT_BOOTING;
+ TaskWrk pakin = taskWrkService.selectByStartPoint(inSta.getStaNo() + "");
+ if (pakin == null && !devpThread.getStation().get(inSta.getStaNo()).isLoading()
+ && !devpThread.getStation().get(inSta.getBackSta()).isLoading()
+ && devpThread.getStation().get(inSta.getBackSta()).getWorkNo() == 0) {
+ // 鍑哄簱妯″紡
+ devpThread.ioModeOf1F1 = IoModeType.PAKOUT_MODE;
+ }
+ }
+ } else {
+ // 鍏ュ簱妯″紡
+ devpThread.ioModeOf1F1 = IoModeType.PAKIN_MODE;
+ }
+ break;
+ default:
+ break;
+ }
+ }
+ }
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+
+
+ /**
+ * 璺戝簱绋嬪簭
+ */
+// public void debug(String sts, Long modiUser, Integer loc_type1) {
+// if (!enable) {
+// return;
+// }
+// List<BasCrnp> basCrnps = basCrnpService.selectList(new EntityWrapper<BasCrnp>());
+// if (basCrnps.isEmpty()) {
+// return;
+// }
+// for (BasCrnp basCrnp : basCrnps) {
+// if (!basCrnp.getInEnable().equals("N") || !basCrnp.getOutEnable().equals("Y")) {
+// continue;
+// }
+// List<WrkMast> wrkMasts = wrkMastService.selectList(new EntityWrapper<WrkMast>().eq("crn_no", basCrnp.getCrnNo()).eq("io_type", 11));
+// if (Cools.isEmpty(wrkMasts) || wrkMasts.isEmpty()) {
+// int i = locMastService.selectCount(new EntityWrapper<LocMast>().eq("loc_sts", sts).eq("loc_type1", loc_type1).ne("modi_user", modiUser));
+// LocMast locMastStart = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_sts", sts).eq("loc_type1", loc_type1).ne("modi_user", modiUser));
+// if (locMastStart == null || i > 1) {
+// continue;
+// }
+// List<LocMast> locMasts = locMastService.selectList(new EntityWrapper<LocMast>()
+// .eq("loc_sts", "O")
+// .eq("crn_no", basCrnp.getCrnNo())
+// .eq("loc_type1", locMastStart.getLocType1())
+// .ne("modi_user", 77));
+// if (Cools.isEmpty(locMasts)) {
+// continue;
+// }
+// Random random = new Random();
+// LocMast locMastEnd = locMasts.get(random.nextInt(locMasts.size()));
+// locMove(locMastStart, locMastEnd, Long.parseLong(basCrnp.getCrnNo().toString()));
+// }
+// }
+// }
+
}
diff --git a/src/main/java/com/zy/asrs/service/impl/TaskWrkServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/TaskWrkServiceImpl.java
index 5b20240..ed84734 100644
--- a/src/main/java/com/zy/asrs/service/impl/TaskWrkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/TaskWrkServiceImpl.java
@@ -38,6 +38,11 @@
}
@Override
+ public TaskWrk selectByTargetPoint(String taskNo) {
+ return this.baseMapper.selectByTargetPoint(taskNo);
+ }
+
+ @Override
public TaskWrk selectByStartPoint(String taskNo) {
return this.baseMapper.selectByStartPoint(taskNo);
}
diff --git a/src/main/java/com/zy/core/MainProcess.java b/src/main/java/com/zy/core/MainProcess.java
index 95a133f..a8373b1 100644
--- a/src/main/java/com/zy/core/MainProcess.java
+++ b/src/main/java/com/zy/core/MainProcess.java
@@ -68,6 +68,11 @@
// mainService.outOfDevp();
// 鍏朵粬 ===>> // 鍏ュ嚭搴撴ā寮忓垏鎹㈠嚱鏁�
+ i++;
+ if (i > 1) {
+ mainService.ioConvert();
+ i = 0;
+ }
//鐜舰寰幆鍑芥暟
// mainService.shiftTargetToCyclePoint();
// mainService.shiftCyclePointToTarget();
diff --git a/src/main/java/com/zy/core/thread/SiemensDevpThread.java b/src/main/java/com/zy/core/thread/SiemensDevpThread.java
index 9139aaa..23fd1e1 100644
--- a/src/main/java/com/zy/core/thread/SiemensDevpThread.java
+++ b/src/main/java/com/zy/core/thread/SiemensDevpThread.java
@@ -42,7 +42,7 @@
* 3.鍑哄簱鍚姩涓� 锛堜笉鑳界敓鎴愬叆搴撳伐浣滄。锛�
* 4.鍑哄簱妯″紡
*/
- public IoModeType ioModeOf1F = IoModeType.NONE;
+ public IoModeType ioModeOf1F1 = IoModeType.NONE;
public SiemensDevpThread(DevpSlave slave) {
this.slave = slave;
diff --git a/src/main/resources/mapper/TaskWrkMapper.xml b/src/main/resources/mapper/TaskWrkMapper.xml
index 81b71b7..5027694 100644
--- a/src/main/resources/mapper/TaskWrkMapper.xml
+++ b/src/main/resources/mapper/TaskWrkMapper.xml
@@ -34,10 +34,18 @@
and task_no = #{taskNo}
</select>
+ <select id="selectByTargetPoint" resultMap="BaseResultMap">
+ select top 1 * from wcs_task_wrk
+ where 1=1
+ and io_type=2
+ and target_point = #{targetPoint}
+ </select>
+
+
<select id="selectByStartPoint" resultMap="BaseResultMap">
select top 1 * from wcs_task_wrk
where 1=1
- and io_type=3
+ and io_type=1
and start_point = #{startPoint}
</select>
--
Gitblit v1.9.1