*
L
2026-04-22 18e03c72291dfcb9cebc3a21ab276bec4a0b262e
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -2,7 +2,7 @@
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.core.common.Cools;
import com.core.common.R;
import com.core.exception.CoolException;
@@ -112,7 +112,7 @@
     */
    public synchronized int[][] getStePositionNearby(Integer siteNo) {
        try {
            List<BasDevpPosition> basDevpPositions = basDevpPositionService.selectList(new EntityWrapper<BasDevpPosition>().orderBy("plc_position", true));
            List<BasDevpPosition> basDevpPositions = basDevpPositionService.list(new QueryWrapper<BasDevpPosition>().orderByAsc("plc_position"));
            if (basDevpPositions.isEmpty()) {
                log.error("获取所有站点信息异常");
                return null;
@@ -141,7 +141,7 @@
                log.info("更新小车排序信息异常={}", rgvNo);
                return null;
            }
            List<BasCircularShuttle> basCircularShuttleList = basCircularShuttleService.selectList(new EntityWrapper<BasCircularShuttle>().orderBy("rgv_id", true));
            List<BasCircularShuttle> basCircularShuttleList = basCircularShuttleService.list(new QueryWrapper<BasCircularShuttle>().orderByAsc("rgv_id"));
            int[][] ints = new int[basCircularShuttleList.size()][2];
            for (BasCircularShuttle basCircularShuttle : basCircularShuttleList) {
                ints[basCircularShuttle.getRgvNo() - 1] = new int[]{basCircularShuttle.getRgvNo(), basCircularShuttle.getRgvId()};
@@ -171,7 +171,7 @@
        try {
            boolean sign = false;
            Integer rgvNo = 0;
            List<BasCircularShuttle> basCircularShuttleList = basCircularShuttleService.selectList(new EntityWrapper<BasCircularShuttle>().orderBy("rgv_id", true));
            List<BasCircularShuttle> basCircularShuttleList = basCircularShuttleService.list(new QueryWrapper<BasCircularShuttle>().orderByAsc("rgv_id"));
            for (BasCircularShuttle basCircularShuttle : basCircularShuttleList) {
                if (basCircularShuttle.getStatus() != 0){
                    sign = true;
@@ -233,8 +233,8 @@
     */
    private void dispatchTaskByFlow() {
        Date now = new Date();
        List<WrkMast> taskPool = wrkMastService.selectList(
                new EntityWrapper<WrkMast>().eq("wrk_sts", 1L).orderBy("modi_time", true)
        List<WrkMast> taskPool = wrkMastService.list(
                new QueryWrapper<WrkMast>().eq("wrk_sts", 1L).orderByAsc("modi_time")
        );
        if (taskPool.isEmpty()) {
            return;
@@ -249,8 +249,8 @@
            return;
        }
        List<BasDevpPosition> sitePositions = basDevpPositionService.selectList(
                new EntityWrapper<BasDevpPosition>().orderBy("plc_position", true)
        List<BasDevpPosition> sitePositions = basDevpPositionService.list(
                new QueryWrapper<BasDevpPosition>().orderByAsc("plc_position")
        );
        if (sitePositions == null || sitePositions.isEmpty()) {
            return;
@@ -330,8 +330,8 @@
    private List<RgvRuntimeState> loadAvailableRgvs() {
        List<RgvRuntimeState> result = new ArrayList<>();
        List<BasCircularShuttle> shuttles = basCircularShuttleService.selectList(
                new EntityWrapper<BasCircularShuttle>().orderBy("rgv_id", true)
        List<BasCircularShuttle> shuttles = basCircularShuttleService.list(
                new QueryWrapper<BasCircularShuttle>().orderByAsc("rgv_id")
        );
        if (shuttles == null || shuttles.isEmpty()) {
            return result;
@@ -370,8 +370,8 @@
    }
    private boolean isRgvRunningTask(Integer rgvNo) {
        List<WrkMast> running = wrkMastService.selectList(
                new EntityWrapper<WrkMast>().eq("rgv_no", rgvNo).eq("wrk_sts", 2L)
        List<WrkMast> running = wrkMastService.list(
                new QueryWrapper<WrkMast>().eq("rgv_no", rgvNo).eq("wrk_sts", 2L)
        );
        return running != null && !running.isEmpty();
    }
@@ -528,12 +528,12 @@
                List<WrkMast> wrkMastlistC = new ArrayList<>();
                List<WrkMast> wrkMastlistD = new ArrayList<>();
                for (BasDevpPosition basDevpPosition : basDevpPositionsListUN) {
                    List<WrkMast> wrkMastList = wrkMastService.selectList(new EntityWrapper<WrkMast>().eq("sta_no", basDevpPosition.getDevNo()).eq("wrk_sts", 1L).orderBy("modi_time", true));
                    List<WrkMast> wrkMastList = wrkMastService.list(new QueryWrapper<WrkMast>().eq("sta_no", basDevpPosition.getDevNo()).eq("wrk_sts", 1L).orderByAsc("modi_time"));
                    for (WrkMast wrkMast : wrkMastList) {
                        if (!Cools.isEmpty(wrkMast)) {
                            if (siteList.contains(wrkMast.getSourceStaNo())){
                                if (!sourceStaNoList.contains(wrkMast.getSourceStaNo())){
                                    List<WrkMast> wrkMastListS = wrkMastService.selectList(new EntityWrapper<WrkMast>().eq("source_sta_no", wrkMast.getSourceStaNo()).eq("wrk_sts", 1L).orderBy("modi_time", true));
                                    List<WrkMast> wrkMastListS = wrkMastService.list(new QueryWrapper<WrkMast>().eq("source_sta_no", wrkMast.getSourceStaNo()).eq("wrk_sts", 1L).orderByAsc("modi_time"));
                                    if (wrkMastListS.isEmpty()){
                                        continue;
                                    }
@@ -581,7 +581,7 @@
            List<WrkMast> wrkMastlistA = new ArrayList<>();
            List<WrkMast> wrkMastlistB = new ArrayList<>();
            for (BasDevpPosition basDevpPosition : basDevpPositionsListUN) {
                List<WrkMast> wrkMastList = wrkMastService.selectList(new EntityWrapper<WrkMast>().eq("sta_no", basDevpPosition.getDevNo()).eq("wrk_sts", 1L).orderBy("modi_time", true));
                List<WrkMast> wrkMastList = wrkMastService.list(new QueryWrapper<WrkMast>().eq("sta_no", basDevpPosition.getDevNo()).eq("wrk_sts", 1L).orderByAsc("modi_time"));
                for (WrkMast wrkMast : wrkMastList) {
                    if (!Cools.isEmpty(wrkMast)) {
                        if (SortTheExecutionOfTheCarUtil.devpNoSortbj(basDevpPositionsListUN, wrkMast.getSourceStaNo(), wrkMast.getStaNo())) {
@@ -628,7 +628,7 @@
                                continue;
                            }
                            BasCircularShuttle basCircularShuttle = basCircularShuttleService.selectOne(new EntityWrapper<BasCircularShuttle>().eq("rgv_no", rgvNo));
                            BasCircularShuttle basCircularShuttle = basCircularShuttleService.getOne(new QueryWrapper<BasCircularShuttle>().eq("rgv_no", rgvNo));
                            if (basCircularShuttle.getStatus() != 0){
                                continue ;
                            }
@@ -640,7 +640,7 @@
                                continue;
                            }
                            List<WrkMast> wrkMasts = wrkMastService.selectList(new EntityWrapper<WrkMast>().eq("rgv_no", rgvProtocol.getRgvNo()).eq("wrk_sts", 2L));
                            List<WrkMast> wrkMasts = wrkMastService.list(new QueryWrapper<WrkMast>().eq("rgv_no", rgvProtocol.getRgvNo()).eq("wrk_sts", 2L));
                            if (!wrkMasts.isEmpty()) {
                                continue;
                            }
@@ -650,7 +650,7 @@
                                    && rgvProtocol.getTaskNo1() == 0
                                    && rgvProtocol.getRgvPosInt() != 0
                                    && rgvProtocol.getAlarm() == 0) {
                                BasDevpPosition basDevpPosition = basDevpPositionService.selectOne(new EntityWrapper<BasDevpPosition>().eq("dev_no", wrkMast.getSourceStaNo()));
                                BasDevpPosition basDevpPosition = basDevpPositionService.getOne(new QueryWrapper<BasDevpPosition>().eq("dev_no", wrkMast.getSourceStaNo()));
                                if (basDevpPosition.getPlcPosition()>rgvProtocol.getRgvPos()){
                                    if (basDevpPosition.getPlcPosition()-rgvProtocol.getRgvPos()>taskRunPerimeter){
                                        if (!rgvNoM.contains(rgvProtocol.getRgvNo())){
@@ -683,7 +683,7 @@
                                    double finalVelocity = 0.0;     // 最终速度 (m/s)
                                    double distance = (Math.pow(finalVelocity, 2) - Math.pow(rgvProtocol.instantaneousSpeed / 60, 2)) / (2 * acceleration);
                                    if ((distance * proportion + (rgvProtocol.instantaneousSpeed / 60) * proportion * rgvDate) > (SortTheExecutionOfTheCarUtil.LatelyAndLessThan(basDevpPosition.getPlcPosition(), rgvProtocol.getRgvPos(), perimeter) )) {
//                                List<BasDevpPosition> basDevpPositions = basDevpPositionService.selectList(new EntityWrapper<BasDevpPosition>().orderBy("plc_position", true));
//                                List<BasDevpPosition> basDevpPositions = basDevpPositionService.list(new QueryWrapper<BasDevpPosition>().orderByAsc("plc_position"));
//                                if (basDevpPositions.isEmpty()) {
//                                    log.error("获取所有站点信息异常,RGV任务下发失败,请联系管理员!!!");
//                                    break runRgv;
@@ -785,7 +785,7 @@
                if (rgvProtocol == null) {
                    continue;
                }
                BasRgv basRgv = basRgvService.selectById(rgvSlave.getId());
                BasRgv basRgv = basRgvService.getById(rgvSlave.getId());
                if (basRgv == null) {
                    log.error("{}号RGV尚未在数据库进行维护!", rgvSlave.getId());
                    continue;
@@ -799,7 +799,7 @@
                        && rgvProtocol.getTaskNo1() != 0
                ) {
//                    log.info("{}号小车等待wcs确认,状态{},参数{}",rgvProtocol.getRgvNo(),rgvProtocol.getStatusType(),rgvProtocol);
                    WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("wrk_no", rgvProtocol.getTaskNo1().longValue()).eq("rgv_no",rgvProtocol.getRgvNo()));
                    WrkMast wrkMast = wrkMastService.getOne(new QueryWrapper<WrkMast>().eq("wrk_no", rgvProtocol.getTaskNo1().longValue()).eq("rgv_no",rgvProtocol.getRgvNo()));
                    if (Cools.isEmpty(wrkMast) || !wrkMast.getWrkSts().equals(2L)) {
                        log.error("未查到小车执行任务或者执行任务状态不符合!" + wrkMast);
                        continue;
@@ -842,7 +842,7 @@
                                    wrkMast1.setModiTime(now);
                                    wrkMast1.setAppeTime(now);
                                    wrkMast1.setMemo("测试数据");
                                    wrkMastService.insert(wrkMast1);
                                    wrkMastService.save(wrkMast1);
                                }
                                continue;
                            }
@@ -902,7 +902,7 @@
                    }
                    log.info("RGV取消命令下发成功,RGV号={},任务数据={}", rgvProtocol.getRgvNo(), JSON.toJSON(rgvCommand));
                    WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("wrk_no", rgvCommand.getTaskNo1().longValue()).eq("rgv_no",rgvCommand.getRgvNo()));
                    WrkMast wrkMast = wrkMastService.getOne(new QueryWrapper<WrkMast>().eq("wrk_no", rgvCommand.getTaskNo1().longValue()).eq("rgv_no",rgvCommand.getRgvNo()));
                    if (Cools.isEmpty(wrkMast) || !wrkMast.getWrkSts().equals(2L)) {
                        log.error("未查到小车执行任务或者执行任务状态不符合!" + wrkMast);
                        continue;