From 510a21954afdf40479bdf293568cc7979e6043ad Mon Sep 17 00:00:00 2001
From: zhang <zc857179121@qq.com>
Date: 星期三, 07 一月 2026 16:15:53 +0800
Subject: [PATCH] 1
---
src/main/java/com/zy/asrs/controller/OpenController.java | 4
src/main/java/com/zy/asrs/service/impl/CtuMainServiceImpl.java | 390 +++++++++++++++++++++++++++++++++++-------------
src/main/java/com/zy/core/CtuMainProcess.java | 4
src/main/java/com/zy/asrs/service/CtuMainService.java | 33 ++++
4 files changed, 323 insertions(+), 108 deletions(-)
diff --git a/src/main/java/com/zy/asrs/controller/OpenController.java b/src/main/java/com/zy/asrs/controller/OpenController.java
index 613bced..62d7ce9 100644
--- a/src/main/java/com/zy/asrs/controller/OpenController.java
+++ b/src/main/java/com/zy/asrs/controller/OpenController.java
@@ -3,7 +3,7 @@
import com.core.common.R;
import com.zy.asrs.domain.param.AskStaParam;
import com.zy.asrs.domain.param.TaskReportParam;
-import com.zy.asrs.service.impl.CtuMainServiceImpl;
+import com.zy.asrs.service.CtuMainService;
import com.zy.common.web.BaseController;
import com.zy.core.DevpThread;
import com.zy.core.cache.MessageQueue;
@@ -33,7 +33,7 @@
@Autowired
- private CtuMainServiceImpl ctuMainService;
+ private CtuMainService ctuMainService;
@Value("${ctu.url}")
diff --git a/src/main/java/com/zy/asrs/service/CtuMainService.java b/src/main/java/com/zy/asrs/service/CtuMainService.java
new file mode 100644
index 0000000..bf31342
--- /dev/null
+++ b/src/main/java/com/zy/asrs/service/CtuMainService.java
@@ -0,0 +1,33 @@
+package com.zy.asrs.service;
+
+/**
+ * 绔嬩綋浠撳簱WCS绯荤粺涓绘祦绋嬩笟鍔℃帴鍙�
+ * Created by vincent on 2020/8/6
+ */
+public interface CtuMainService {
+
+ /**
+ * 鍑哄簱鐨勬椂鍊欙紝璁惧涓婅蛋
+ * @param mark 鏍囪
+ */
+ void out(Integer mark);
+
+ /**
+ * 鍏ュ簱锛屼粠鎷f枡绔欏埌鍏ュ簱绔欙紙CTU鍙栬揣绔欙級
+ * @param mark 鏍囪
+ */
+ void in(Integer mark);
+
+ /**
+ * 鍏ュ簱绗簩姝ュ鐞�
+ * @param mark 鏍囪
+ */
+ void in2(Integer mark);
+
+ /**
+ * 妫�鏌ョ珯鐐圭姸鎬�
+ * @param staNo 绔欑偣缂栧彿
+ * @return 绔欑偣鏄惁鍙�氳
+ */
+ boolean station(Integer staNo);
+}
\ No newline at end of file
diff --git a/src/main/java/com/zy/asrs/service/impl/CtuMainServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/CtuMainServiceImpl.java
index 259d514..ad3df00 100644
--- a/src/main/java/com/zy/asrs/service/impl/CtuMainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/CtuMainServiceImpl.java
@@ -6,6 +6,7 @@
import com.core.exception.CoolException;
import com.zy.asrs.controller.requestParam.StationRequestParam;
import com.zy.asrs.domain.vo.StationStatus;
+import com.zy.asrs.service.CtuMainService;
import com.zy.common.utils.HttpHandler;
import com.zy.common.utils.News;
import com.zy.core.cache.MessageQueue;
@@ -26,6 +27,7 @@
import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.TimeUnit;
+import java.util.concurrent.locks.ReentrantLock;
/**
* 绔嬩綋浠撳簱WCS绯荤粺涓绘祦绋嬩笟鍔�
@@ -35,9 +37,16 @@
@Service("ctuMainService")
@Transactional
@Data
-public class CtuMainServiceImpl {
+public class CtuMainServiceImpl implements CtuMainService {
public static final long COMMAND_TIMEOUT = 5 * 1000;
+ private static final long SLEEP_DURATION = 8000L;
+ private static final int MAX_WORK_NO = 9999;
+ private static final int RANDOM_WORK_NO_MAX = 10000;
+ private static final int CTU_STATION_1001 = 1001;
+ private static final int CTU_STATION_1007 = 1007;
+ private static final int CTU_STATION_1006 = 1006;
+ private static final int CTU_STATION_1004 = 1004;
@Value("${ctu.url}")
private String ctuUrl;
@@ -45,123 +54,295 @@
@Value("${ctu.station}")
private String station;
-
@Autowired
private SlaveProperties slaveProperties;
+ // 涓轰笉鍚岀殑鎿嶄綔娣诲姞缁嗙矑搴﹂攣
+ private final ReentrantLock outLock = new ReentrantLock();
+ private final ReentrantLock inLock = new ReentrantLock();
+ private final ReentrantLock in2Lock = new ReentrantLock();
/**
* 鍑哄簱鐨勬椂鍊欙紝璁惧涓婅蛋
*/
- public synchronized void out(Integer mark) {
- // 鏍规嵁杈撻�佺嚎plc閬嶅巻
- for (DevpSlave devp : slaveProperties.getDevp()) {
- // 閬嶅巻鍏ュ簱鍙�
- for (DevpSlave.Sta inSta : devp.getOutSta()) {
- // 鑾峰彇鍏ュ簱绔欎俊鎭�
- SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, devp.getId());
- StaProtocol staProtocol = devpThread.getStation().get(inSta.getStaNo());
- if (staProtocol == null) {
- continue;
- } else {
- staProtocol = staProtocol.clone();
- }
- // 鍒ゆ柇鏄惁婊¤冻鏉′欢
- if (!staProtocol.isLoading()) {
- continue;
- }
- //&& staProtocol.isOutEnable()
- if (staProtocol.isAutoing() && !staProtocol.isEmptyMk() && (staProtocol.getWorkNo() == 0 || staProtocol.getWorkNo() == 9999) && staProtocol.isPakMk()) {
- if (station(1001)) {
- News.warnNoLog("" + mark + " - 0" + " - 寮�濮嬫墽琛�");
- // 鏇存柊绔欑偣淇℃伅 涓� 涓嬪彂plc鍛戒护
- staProtocol.setWorkNo((int) (Math.random() * 10000));
- staProtocol.setStaNo((short) 1004);
- devpThread.setPakMk(staProtocol.getSiteId(), false);
- boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol));
- log.info("杈撻�佺嚎涓嬪彂3锛歿},{}", staProtocol.getWorkNo(), 1004);
- if (result) {
- try {
- Thread.sleep(8000L);
- } catch (InterruptedException e) {
- throw new RuntimeException(e);
- }
- } else {
- News.error("" + mark + " - 2" + " - 鍙戝竷鍛戒护鑷宠緭閫佺嚎闃熷垪澶辫触锛侊紒锛� [plc缂栧彿锛歿}]", devp.getId());
- }
- }
- } else {
- News.errorNoLog("" + mark + " - 6" + " - 绔欑偣淇℃伅涓嶇鍚堝叆搴撴潯浠讹紒锛侊紒" + " 鑷姩淇″彿锛�" + staProtocol.isLoading() + "銆佸彲鍏ヤ俊鍙凤細" + staProtocol.isInEnable() + "銆佺┖鏉夸俊鍙凤細" + staProtocol.isEmptyMk() + "銆佸伐浣滃彿锛�" + staProtocol.getWorkNo() + "銆侀攣瀹氭爣璁�" + staProtocol.isPakMk() + "銆佸叆搴撳嵃璁帮細" + staProtocol.getStamp());
+ @Override
+ public void out(Integer mark) {
+ executeWithLock(outLock, () -> {
+ for (DevpSlave devp : slaveProperties.getDevp()) {
+ for (DevpSlave.Sta outSta : devp.getOutSta()) {
+ processOutboundStation(devp, outSta, mark);
}
}
- }
+ }, "鍑哄簱澶勭悊");
}
-
/**
* 鍏ュ簱锛屼粠鎷f枡绔欏埌鍏ュ簱绔欙紙CTU鍙栬揣绔欙級
*/
- public synchronized void in(Integer mark) {
- // 鏍规嵁杈撻�佺嚎plc閬嶅巻
- SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, 1);
- StaProtocol staProtocol = devpThread.getStation().get(1004);
- if (staProtocol == null) {
- return;
- } else {
- staProtocol = staProtocol.clone();
- }
- // 鍒ゆ柇鏄惁婊¤冻鏉′欢
- if (!staProtocol.isLoading()) {
- return;
- }
- // && staProtocol.isInEnable()
- if (staProtocol.getWorkNo() > 0 && staProtocol.isAutoing() && !staProtocol.isEmptyMk() && staProtocol.isPakMk()) {
- if (staProtocol.getStaNo() == 1004) {
- try {
- Thread.sleep(8000L);
- } catch (InterruptedException e) {
- throw new RuntimeException(e);
+ @Override
+ public void in(Integer mark) {
+ executeWithLock(inLock, () -> processInboundStation(mark, CTU_STATION_1004, (short) CTU_STATION_1006), "鍏ュ簱澶勭悊");
+ }
+
+ @Override
+ public void in2(Integer mark) {
+ executeWithLock(in2Lock, () -> {
+ // 鑾峰彇1007绔欑偣淇℃伅
+ SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, 1);
+ if (devpThread == null) {
+ log.warn("鏃犳硶鑾峰彇璁惧绾跨▼锛岃澶嘔D: 1");
+ return;
+ }
+
+ StaProtocol staProtocol = getStationProtocol(devpThread, CTU_STATION_1007);
+ if (staProtocol == null || !isStationReadyForProcessing(staProtocol)) {
+ return;
+ }
+
+ if (staProtocol.getWorkNo() > 0 &&
+ staProtocol.isAutoing() &&
+ !staProtocol.isEmptyMk() &&
+ staProtocol.isPakMk()) {
+
+ if (station(CTU_STATION_1007)) {
+ Integer workNo = staProtocol.getWorkNo();
+
+ // 娓呯┖1007绔欑偣
+ clearStationProtocol(staProtocol, devpThread);
+
+ // 鏇存柊1006绔欑偣淇℃伅
+ updateStation1006(devpThread, workNo);
}
- staProtocol.setStaNo((short) 1006);
- boolean result = MessageQueue.offer(SlaveType.Devp, 1, new Task(2, staProtocol));
- log.info("鍏ュ簱杈撻�佺嚎涓嬪彂锛歿},{}", staProtocol.getWorkNo(), 1007);
}
- }
+ }, "鍏ュ簱绗簩姝ュ鐞�");
}
-
- public synchronized void in2(Integer mark) {
- // 鏍规嵁杈撻�佺嚎plc閬嶅巻
- SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, 1);
- StaProtocol staProtocol = devpThread.getStation().get(1007);
- if (staProtocol == null) {
- return;
- } else {
- staProtocol = staProtocol.clone();
- }
- // 鍒ゆ柇鏄惁婊¤冻鏉′欢
- if (!staProtocol.isLoading()) {
- return;
- }
- if (staProtocol.getWorkNo() > 0 && staProtocol.isAutoing() && !staProtocol.isEmptyMk() && staProtocol.isPakMk()) {
- if (station(1007)) {
- Integer workNo = staProtocol.getWorkNo();
- staProtocol.setWorkNo(0);
- staProtocol.setStaNo((short) 0);
- boolean result = MessageQueue.offer(SlaveType.Devp, 1, new Task(2, staProtocol));
- log.info("1007绔欑偣娓呯┖锛歿},{}", staProtocol.getWorkNo(), 1006);
- StaProtocol staProtocol1006 = devpThread.getStation().get(1006);
- staProtocol1006.setWorkNo(workNo);
- staProtocol1006.setStaNo((short) 1007);
- boolean result2 = MessageQueue.offer(SlaveType.Devp, 1, new Task(2, staProtocol));
- log.info("1006绔欑偣寰�鍓嶈蛋涓�鏍硷細{},{}", staProtocol.getWorkNo(), 1007);
- }
- }
- }
-
-
+ @Override
@Transactional
public boolean station(Integer staNo) {
+ return checkStationStatus(staNo);
+ }
+
+ /**
+ * 鍦ㄩ攣鐨勪繚鎶や笅鎵ц鎿嶄綔
+ * @param lock 閿�
+ * @param operation 瑕佹墽琛岀殑鎿嶄綔
+ * @param operationName 鎿嶄綔鍚嶇О锛岀敤浜庢棩蹇�
+ */
+ private void executeWithLock(ReentrantLock lock, Runnable operation, String operationName) {
+ lock.lock();
+ try {
+ operation.run();
+ } catch (Exception e) {
+ log.error("{}寮傚父", operationName, e);
+ News.error("{}寮傚父: {}", operationName, e.getMessage());
+ } finally {
+ lock.unlock();
+ }
+ }
+
+ /**
+ * 澶勭悊鍑哄簱绔欑偣
+ * @param devp 璁惧
+ * @param outSta 鍑哄簱绔欑偣
+ * @param mark 鏍囪
+ */
+ private void processOutboundStation(DevpSlave devp, DevpSlave.Sta outSta, Integer mark) {
+ SiemensDevpThread devpThread = getDeviceThread(SlaveType.Devp, devp.getId());
+ if (devpThread == null) {
+ log.warn("鏃犳硶鑾峰彇璁惧绾跨▼锛岃澶嘔D: {}", devp.getId());
+ return;
+ }
+
+ StaProtocol staProtocol = getStationProtocol(devpThread, outSta.getStaNo());
+ if (staProtocol == null || !isStationReadyForProcessing(staProtocol)) {
+ return;
+ }
+
+ if (isOutboundConditionMet(staProtocol) && station(CTU_STATION_1001)) {
+ executeOutboundProcess(staProtocol, devp, mark, devpThread);
+ } else {
+ logStationConditionError(mark, staProtocol);
+ }
+ }
+
+ /**
+ * 妫�鏌ュ嚭搴撴潯浠舵槸鍚︽弧瓒�
+ * @param staProtocol 绔欑偣鍗忚
+ * @return 鏉′欢鏄惁婊¤冻
+ */
+ private boolean isOutboundConditionMet(StaProtocol staProtocol) {
+ return staProtocol.isAutoing() &&
+ !staProtocol.isEmptyMk() &&
+ (staProtocol.getWorkNo() == 0 || staProtocol.getWorkNo() == MAX_WORK_NO) &&
+ staProtocol.isPakMk();
+ }
+
+ /**
+ * 鎵ц鍑哄簱澶勭悊
+ * @param staProtocol 绔欑偣鍗忚
+ * @param devp 璁惧
+ * @param mark 鏍囪
+ * @param devpThread 璁惧绾跨▼
+ */
+ private void executeOutboundProcess(StaProtocol staProtocol, DevpSlave devp, Integer mark, SiemensDevpThread devpThread) {
+ News.warnNoLog("" + mark + " - 0" + " - 寮�濮嬫墽琛�");
+ // 鏇存柊绔欑偣淇℃伅 涓� 涓嬪彂plc鍛戒护
+ staProtocol.setWorkNo((int) (Math.random() * RANDOM_WORK_NO_MAX));
+ staProtocol.setStaNo((short) CTU_STATION_1004);
+ devpThread.setPakMk(staProtocol.getSiteId(), false);
+ boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol));
+ log.info("杈撻�佺嚎涓嬪彂3锛歿},{}", staProtocol.getWorkNo(), CTU_STATION_1004);
+ if (result) {
+ sleepWithInterruptHandling(SLEEP_DURATION, "鍑哄簱澶勭悊");
+ } else {
+ News.error("" + mark + " - 2" + " - 鍙戝竷鍛戒护鑷宠緭閫佺嚎闃熷垪澶辫触锛侊紒锛� [plc缂栧彿锛歿}]", devp.getId());
+ }
+ }
+
+ /**
+ * 璁板綍绔欑偣鏉′欢閿欒鏃ュ織
+ * @param mark 鏍囪
+ * @param staProtocol 绔欑偣鍗忚
+ */
+ private void logStationConditionError(Integer mark, StaProtocol staProtocol) {
+ String errorMsg = String.format(
+ "%s - 6 - 绔欑偣淇℃伅涓嶇鍚堝叆搴撴潯浠讹紒锛侊紒 鑷姩淇″彿锛�%s銆佸彲鍏ヤ俊鍙凤細%s銆佺┖鏉夸俊鍙凤細%s銆佸伐浣滃彿锛�%s銆侀攣瀹氭爣璁�%s銆佸叆搴撳嵃璁帮細%s",
+ mark,
+ staProtocol.isLoading(),
+ staProtocol.isInEnable(),
+ staProtocol.isEmptyMk(),
+ staProtocol.getWorkNo(),
+ staProtocol.isPakMk(),
+ staProtocol.getStamp()
+ );
+ News.errorNoLog(errorMsg);
+ log.warn(errorMsg);
+ }
+
+ /**
+ * 澶勭悊鍏ュ簱绔欑偣
+ * @param mark 鏍囪
+ * @param sourceStaNo 婧愮珯鐐圭紪鍙�
+ * @param targetStaNo 鐩爣绔欑偣缂栧彿
+ */
+ private void processInboundStation(Integer mark, int sourceStaNo, short targetStaNo) {
+ SiemensDevpThread devpThread = getDeviceThread(SlaveType.Devp, 1);
+ if (devpThread == null) {
+ log.warn("鏃犳硶鑾峰彇璁惧绾跨▼锛岃澶嘔D: 1");
+ return;
+ }
+
+ StaProtocol staProtocol = getStationProtocol(devpThread, sourceStaNo);
+ if (staProtocol == null || !isStationReadyForProcessing(staProtocol)) {
+ return;
+ }
+
+ if (staProtocol.getWorkNo() > 0 &&
+ staProtocol.isAutoing() &&
+ !staProtocol.isEmptyMk() &&
+ staProtocol.isPakMk()) {
+
+ if (staProtocol.getStaNo() == sourceStaNo) {
+ sleepWithInterruptHandling(SLEEP_DURATION, "鍏ュ簱澶勭悊");
+ staProtocol.setStaNo(targetStaNo);
+ boolean result = MessageQueue.offer(SlaveType.Devp, 1, new Task(2, staProtocol));
+ log.info("鍏ュ簱杈撻�佺嚎涓嬪彂锛歿},{}", staProtocol.getWorkNo(), targetStaNo);
+ }
+ }
+ }
+
+ /**
+ * 鑾峰彇璁惧绾跨▼
+ * @param slaveType 浠庣被鍨�
+ * @param id 璁惧ID
+ * @return 璁惧绾跨▼
+ */
+ private SiemensDevpThread getDeviceThread(SlaveType slaveType, Integer id) {
+ Object device = SlaveConnection.get(slaveType, id);
+ if (device instanceof SiemensDevpThread) {
+ return (SiemensDevpThread) device;
+ }
+ return null;
+ }
+
+ /**
+ * 鑾峰彇绔欑偣鍗忚瀵硅薄
+ * @param devpThread 璁惧绾跨▼
+ * @param staNo 绔欑偣缂栧彿
+ * @return 绔欑偣鍗忚瀵硅薄
+ */
+ private StaProtocol getStationProtocol(SiemensDevpThread devpThread, int staNo) {
+ try {
+ StaProtocol staProtocol = devpThread.getStation().get(staNo);
+ if (staProtocol != null) {
+ return staProtocol.clone();
+ }
+ } catch (Exception e) {
+ log.error("鑾峰彇绔欑偣鍗忚寮傚父锛岀珯鐐圭紪鍙�: {}", staNo, e);
+ }
+ return null;
+ }
+
+ /**
+ * 妫�鏌ョ珯鐐规槸鍚﹀噯澶囧ソ澶勭悊
+ * @param staProtocol 绔欑偣鍗忚
+ * @return 鏄惁鍑嗗濂�
+ */
+ private boolean isStationReadyForProcessing(StaProtocol staProtocol) {
+ return staProtocol != null && staProtocol.isLoading();
+ }
+
+ /**
+ * 甯︿腑鏂鐞嗙殑鐫$湢
+ * @param duration 浼戠湢鏃堕棿
+ * @param operationName 鎿嶄綔鍚嶇О锛岀敤浜庢棩蹇�
+ */
+ private void sleepWithInterruptHandling(long duration, String operationName) {
+ try {
+ Thread.sleep(duration);
+ } catch (InterruptedException e) {
+ Thread.currentThread().interrupt();
+ log.error("{}绾跨▼涓柇寮傚父", operationName, e);
+ throw new RuntimeException(operationName + "绾跨▼涓柇", e);
+ }
+ }
+
+ /**
+ * 娓呯┖绔欑偣鍗忚
+ * @param staProtocol 绔欑偣鍗忚
+ * @param devpThread 璁惧绾跨▼
+ */
+ private void clearStationProtocol(StaProtocol staProtocol, SiemensDevpThread devpThread) {
+ staProtocol.setWorkNo(0);
+ staProtocol.setStaNo((short) 0);
+ boolean result = MessageQueue.offer(SlaveType.Devp, 1, new Task(2, staProtocol));
+ log.info("1007绔欑偣娓呯┖锛歿},{}", staProtocol.getWorkNo(), CTU_STATION_1006);
+ }
+
+ /**
+ * 鏇存柊1006绔欑偣
+ * @param devpThread 璁惧绾跨▼
+ * @param workNo 宸ヤ綔鍙�
+ */
+ private void updateStation1006(SiemensDevpThread devpThread, Integer workNo) {
+ StaProtocol staProtocol1006 = devpThread.getStation().get(CTU_STATION_1006);
+ if (staProtocol1006 != null) {
+ staProtocol1006.setWorkNo(workNo);
+ staProtocol1006.setStaNo((short) CTU_STATION_1007);
+ boolean result2 = MessageQueue.offer(SlaveType.Devp, 1, new Task(2, staProtocol1006));
+ log.info("1006绔欑偣寰�鍓嶈蛋涓�鏍硷細{},{}", staProtocol1006.getWorkNo(), CTU_STATION_1007);
+ } else {
+ log.warn("鏃犳硶鑾峰彇1006绔欑偣鍗忚");
+ }
+ }
+
+ /**
+ * 妫�鏌ョ珯鐐圭姸鎬�
+ * @param staNo 绔欑偣缂栧彿
+ * @return 绔欑偣鏄惁鍙�氳
+ */
+ private boolean checkStationStatus(Integer staNo) {
StationRequestParam stationRequestParam = new StationRequestParam();
List<String> staNos = new ArrayList<>();
staNos.add(staNo + "");
@@ -192,14 +373,15 @@
}
log.info("鏈繑鍥炵珯鐐圭姸鎬侊細{}", staNo);
} else {
- //log.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", ctuUrl + sendTask, JSON.toJSONString(openBusSubmitParam), response);
- throw new CoolException("璋冪敤涓嬪彂浠诲姟鎺ュ彛鎶ラ敊");
+ log.error("璋冪敤涓嬪彂浠诲姟鎺ュ彛鎶ラ敊锛屽搷搴旂爜锛歿}锛屽搷搴斿唴瀹癸細{}", jsonObject.getInteger("code"), response);
+ throw new CoolException("璋冪敤涓嬪彂浠诲姟鎺ュ彛鎶ラ敊锛屽搷搴旂爜锛�" + jsonObject.getInteger("code"));
}
+ } catch (CoolException e) {
+ log.error("璋冪敤绔欑偣鐘舵�佹帴鍙e紓甯�", e);
+ throw e;
} catch (Exception e) {
- log.error("fail", e);
+ log.error("妫�鏌ョ珯鐐圭姸鎬佸け璐ワ紝绔欑偣缂栧彿锛歿}", staNo, e);
}
return false;
}
-
-
-}
+}
\ No newline at end of file
diff --git a/src/main/java/com/zy/core/CtuMainProcess.java b/src/main/java/com/zy/core/CtuMainProcess.java
index b4147ec..211b3aa 100644
--- a/src/main/java/com/zy/core/CtuMainProcess.java
+++ b/src/main/java/com/zy/core/CtuMainProcess.java
@@ -1,6 +1,6 @@
package com.zy.core;
-import com.zy.asrs.service.impl.CtuMainServiceImpl;
+import com.zy.asrs.service.CtuMainService;
import com.zy.core.properties.SystemProperties;
import lombok.Data;
import lombok.extern.slf4j.Slf4j;
@@ -19,7 +19,7 @@
public class CtuMainProcess {
@Autowired
- private CtuMainServiceImpl ctuMainService;
+ private CtuMainService ctuMainService;
// 鎵�灞炵嚎绋�
private Thread thread;
// 棰戠巼
--
Gitblit v1.9.1