From 2ecb400719e0e2c403bc0999eb63f25b44a49c20 Mon Sep 17 00:00:00 2001
From: L <L@123>
Date: 星期一, 13 十月 2025 15:23:51 +0800
Subject: [PATCH] *

---
 src/main/java/com/zy/asrs/service/BasArmMastLogService.java          |    2 +-
 src/main/java/com/zy/asrs/service/impl/BasArmMastLogServiceImpl.java |    5 ++++-
 src/main/java/com/zy/asrs/task/WorkLogScheduler.java                 |   20 ++++++++++++++++++++
 src/main/java/com/zy/asrs/task/handler/WorkLogHandler.java           |   25 +++++++++++++++++++++++++
 src/main/java/com/zy/asrs/mapper/BasArmMastLogMapper.java            |    4 ++++
 5 files changed, 54 insertions(+), 2 deletions(-)

diff --git a/src/main/java/com/zy/asrs/mapper/BasArmMastLogMapper.java b/src/main/java/com/zy/asrs/mapper/BasArmMastLogMapper.java
index bd46447..fc8bdb2 100644
--- a/src/main/java/com/zy/asrs/mapper/BasArmMastLogMapper.java
+++ b/src/main/java/com/zy/asrs/mapper/BasArmMastLogMapper.java
@@ -2,6 +2,7 @@
 
 import com.zy.asrs.entity.BasArmMastLog;
 import com.baomidou.mybatisplus.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Insert;
 import org.apache.ibatis.annotations.Mapper;
 import org.springframework.stereotype.Repository;
 
@@ -9,4 +10,7 @@
 @Repository
 public interface BasArmMastLogMapper extends BaseMapper<BasArmMastLog> {
 
+    @Insert("insert into asr_bas_arm_mast_log select * from asr_bas_arm_mast where id=#{id}")
+    boolean save(Long id);
+
 }
diff --git a/src/main/java/com/zy/asrs/service/BasArmMastLogService.java b/src/main/java/com/zy/asrs/service/BasArmMastLogService.java
index a8dbff9..1674c78 100644
--- a/src/main/java/com/zy/asrs/service/BasArmMastLogService.java
+++ b/src/main/java/com/zy/asrs/service/BasArmMastLogService.java
@@ -4,5 +4,5 @@
 import com.baomidou.mybatisplus.service.IService;
 
 public interface BasArmMastLogService extends IService<BasArmMastLog> {
-
+    boolean save (Long id);
 }
diff --git a/src/main/java/com/zy/asrs/service/impl/BasArmMastLogServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/BasArmMastLogServiceImpl.java
index 733091a..4732114 100644
--- a/src/main/java/com/zy/asrs/service/impl/BasArmMastLogServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/BasArmMastLogServiceImpl.java
@@ -8,5 +8,8 @@
 
 @Service("basArmMastLogService")
 public class BasArmMastLogServiceImpl extends ServiceImpl<BasArmMastLogMapper, BasArmMastLog> implements BasArmMastLogService {
-
+    @Override
+    public boolean save(Long id){
+        return this.baseMapper.save(id);
+    }
 }
diff --git a/src/main/java/com/zy/asrs/task/WorkLogScheduler.java b/src/main/java/com/zy/asrs/task/WorkLogScheduler.java
index 01f6c09..35772b4 100644
--- a/src/main/java/com/zy/asrs/task/WorkLogScheduler.java
+++ b/src/main/java/com/zy/asrs/task/WorkLogScheduler.java
@@ -1,7 +1,11 @@
 package com.zy.asrs.task;
 
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.core.common.Cools;
+import com.zy.asrs.entity.BasArmMast;
 import com.zy.asrs.entity.WrkMast;
+import com.zy.asrs.service.BasArmMastLogService;
+import com.zy.asrs.service.BasArmMastService;
 import com.zy.asrs.service.WrkMastService;
 import com.zy.asrs.task.core.ReturnT;
 import com.zy.asrs.task.handler.WorkLogHandler;
@@ -23,6 +27,8 @@
     private WorkLogHandler workLogHandler;
     @Autowired
     private WrkMastService wrkMastService;
+    @Autowired
+    private BasArmMastService basArmMastService;
 
     @Scheduled(cron = "0/3 * * * * ? ")
     private void execute(){
@@ -43,4 +49,18 @@
         }
     }
 
+    @Scheduled(cron = "0/3 * * * * ? ")
+    private void executeArm(){
+        List<BasArmMast> basArmMastList = basArmMastService.selectList(new EntityWrapper<BasArmMast>().eq("status", 6));
+        if (basArmMastList.isEmpty()) {
+            return;
+        }
+        for (BasArmMast basArmMast : basArmMastList) {
+            ReturnT<String> result = workLogHandler.startArm(basArmMast);
+            if (!result.isSuccess()) {
+                log.error("ARM宸ヤ綔妗id={}]鍘嗗彶妗e鐞嗗け璐�", basArmMast.getId());
+            }
+        }
+    }
+
 }
diff --git a/src/main/java/com/zy/asrs/task/handler/WorkLogHandler.java b/src/main/java/com/zy/asrs/task/handler/WorkLogHandler.java
index dc6f573..36893e3 100644
--- a/src/main/java/com/zy/asrs/task/handler/WorkLogHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/WorkLogHandler.java
@@ -2,6 +2,7 @@
 
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.core.common.Cools;
+import com.zy.asrs.entity.BasArmMast;
 import com.zy.asrs.entity.WaitPakin;
 import com.zy.asrs.entity.WrkDetl;
 import com.zy.asrs.entity.WrkMast;
@@ -39,6 +40,10 @@
     private WaitPakinLogService waitPakinLogService;
     @Autowired
     private OrderService orderService;
+    @Autowired
+    private BasArmMastLogService basArmMastLogService;
+    @Autowired
+    private BasArmMastService basArmMastService;
 
     @Transactional
     public ReturnT<String> start(WrkMast wrkMast) {
@@ -125,4 +130,24 @@
         return SUCCESS;
     }
 
+    @Transactional
+    public ReturnT<String> startArm(BasArmMast basArmMast) {
+        try {
+            // 淇濆瓨宸ヤ綔涓绘。鍘嗗彶妗�
+            if (!basArmMastLogService.save(basArmMast.getId())) {
+                exceptionHandle("淇濆瓨ARM宸ヤ綔鍘嗗彶妗id={0}]澶辫触", basArmMast.getId());
+            }
+            // 鍒犻櫎宸ヤ綔涓绘。
+            if (!basArmMastService.deleteById(basArmMast)) {
+                exceptionHandle("鍒犻櫎ARM宸ヤ綔涓绘。[id={0}]澶辫触", basArmMast.getId());
+            }
+        } catch (Exception e) {
+            log.error("fail", e);
+            e.printStackTrace();
+            TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+            return FAIL.setMsg(e.getMessage());
+        }
+        return SUCCESS;
+    }
+
 }

--
Gitblit v1.9.1