#
vincentlu
昨天 6fc533a424b5821d9e775d1ca89e00b8d16e57d4
zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainLockWrapService.java
@@ -1,10 +1,11 @@
package com.zy.acs.manager.core.service;
import com.zy.acs.common.utils.News;
import com.zy.acs.framework.exception.CoolException;
import com.zy.acs.manager.manager.entity.Agv;
import com.zy.acs.manager.manager.entity.Jam;
import com.zy.acs.manager.manager.entity.Task;
import com.zy.acs.manager.manager.enums.TaskTypeType;
import com.zy.acs.manager.system.service.ConfigService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -26,6 +27,8 @@
    @Autowired
    private MainService mainService;
    @Autowired
    private ConfigService configService;
    public void buildMajorTask(Long agvId, List<Task> taskList) {
        boolean lockAcquired = false;
@@ -37,7 +40,7 @@
            mainService.buildMajorTask(agvId, taskList);
        } catch (Exception e) {
            log.error("MainLockWrapService.buildMajorTask[task]", e);
            News.error("MainLockWrapService.buildMajorTask[task]", e);
            TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
        } finally {
            if (lockAcquired) {
@@ -46,17 +49,16 @@
        }
    }
    public boolean buildMinorTask(Agv agv, TaskTypeType taskType, String destination, Jam jam) {
    public boolean buildMinorTask(Long agvId, TaskTypeType taskType, String destination, Jam jam) {
        boolean lockAcquired = false;
        try {
            if (!(lockAcquired = this.lock.tryLock(LOCK_TIMEOUT, TimeUnit.SECONDS))) {
                throw new CoolException("failed to generate [minor task] actions, cause can not acquire lock ...");
            }
//            log.info("buildMinorTask AGV[{}] lock time: {}", agv.getUuid(), System.currentTimeMillis());
            return mainService.buildMinorTask(agv, taskType, destination, jam);
            return mainService.buildMinorTask(agvId, taskType, destination, jam);
        } catch (Exception e) {
            log.error("MainLockWrapService.buildMinorTask[task]", e);
            News.error("MainLockWrapService.buildMinorTask[task]", e);
            TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
            return false;
@@ -65,8 +67,8 @@
            if (lockAcquired) {
                this.lock.unlock();
            }
//            log.info("buildMinorTask AGV[{}] unlock time: {}", agv.getUuid(), System.currentTimeMillis());
//            News.info("buildMinorTask AGV[{}] unlock time: {}", agv.getUuid(), System.currentTimeMillis());
        }
    }
}
}