#
vincentlu
昨天 5b238809dea2d47fd10670322977262934055fd9
zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/GuaranteeRuntimeService.java
@@ -6,6 +6,7 @@
import com.zy.acs.manager.manager.entity.AgvDetail;
import com.zy.acs.manager.manager.entity.Guarantee;
import com.zy.acs.manager.manager.entity.Task;
import com.zy.acs.manager.manager.enums.GuaranteeScopeType;
import com.zy.acs.manager.manager.enums.StatusType;
import com.zy.acs.manager.manager.enums.TaskStsType;
import com.zy.acs.manager.manager.enums.TaskTypeType;
@@ -46,12 +47,12 @@
            log.warn("Guarantee[{}] requiredCount is not configured, skip", plan.getName());
            return;
        }
        int minSoc = plan.getMinSoc() == null ? 50 : plan.getMinSoc();
        List<Agv> scopedAgvs = findScopedAgvs(plan);
        int minSoc = plan.getMinSoc();
        List<Agv> scopedAgvList = findScopedAgvList(plan);
        int available = 0;
        List<ChargeCandidate> candidates = new ArrayList<>();
        for (Agv agv : scopedAgvs) {
            AgvDetail detail = agvDetailService.selectByAgvId(agv.getId());
        for (Agv agv : scopedAgvList) {
            AgvDetail detail = agvDetailService.selectMajorByAgvId(agv.getId());
            if (detail == null || detail.getSoc() == null) {
                continue;
            }
@@ -103,10 +104,10 @@
        return busyCount == 0;
    }
    private List<Agv> findScopedAgvs(Guarantee plan) {
    private List<Agv> findScopedAgvList(Guarantee plan) {
        LambdaQueryWrapper<Agv> wrapper = new LambdaQueryWrapper<Agv>()
                .eq(Agv::getStatus, StatusType.ENABLE.val);
        if ("MODEL".equalsIgnoreCase(plan.getScopeType()) && plan.getScopeValue() != null) {
        if (GuaranteeScopeType.MODEL.toString().equalsIgnoreCase(plan.getScopeType()) && plan.getScopeValue() != null) {
            try {
                wrapper.eq(Agv::getAgvModel, Long.valueOf(plan.getScopeValue()));
            } catch (NumberFormatException ignore) {