#
vincentlu
2025-05-13 ebd2f4397a92c6a5096de1b86d59154363344720
zy-acs-manager/src/main/java/com/zy/acs/manager/manager/controller/AgvController.java
@@ -1,6 +1,7 @@
package com.zy.acs.manager.manager.controller;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zy.acs.framework.common.Cools;
import com.zy.acs.framework.common.R;
@@ -11,13 +12,12 @@
import com.zy.acs.manager.common.domain.PageParam;
import com.zy.acs.manager.common.domain.PageResult;
import com.zy.acs.manager.common.utils.ExcelUtil;
import com.zy.acs.manager.core.service.astart.MapDataDispatcher;
import com.zy.acs.manager.manager.controller.result.AgvResult;
import com.zy.acs.manager.manager.entity.Agv;
import com.zy.acs.manager.manager.entity.AgvDetail;
import com.zy.acs.manager.manager.service.AgvDetailService;
import com.zy.acs.manager.manager.service.AgvService;
import com.zy.acs.manager.manager.service.CodeService;
import com.zy.acs.manager.manager.service.TaskService;
import com.zy.acs.manager.manager.entity.AgvModel;
import com.zy.acs.manager.manager.service.*;
import com.zy.acs.manager.system.controller.BaseController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
@@ -36,9 +36,13 @@
    @Autowired
    private AgvDetailService agvDetailService;
    @Autowired
    private AgvModelService agvModelService;
    @Autowired
    private CodeService codeService;
    @Autowired
    private TaskService taskService;
    @Autowired
    private MapDataDispatcher mapDataDispatcher;
//    @PreAuthorize("hasAuthority('manager:agv:list')")
//    @PostMapping("/agv/page")
@@ -80,7 +84,20 @@
    @PreAuthorize("hasAuthority('manager:agv:list')")
    @GetMapping("/agv/{id}")
    public R get(@PathVariable("id") Long id) {
        return R.ok().add(agvService.getById(id));
        Agv agv = agvService.getById(id);
        if (null != agv) {
            agv.setOnline(agvService.judgeOnline(agv.getId()));
            if (agv.getUuid().equals("2")) { agv.setOnline(true); }
            AgvDetail agvDetail = agvDetailService.selectByAgvId(agv.getId());
            if (null != agvDetail) {
                agv.setAgvDetail(agvDetail);
            }
            AgvModel agvModel = agvModelService.getByAgvId(agv.getId());
            if (null != agvModel) {
                agv.setAgvModelData(agvModel);
            }
        }
        return R.ok().add(agv);
    }
    @PreAuthorize("hasAuthority('manager:agv:save')")
@@ -158,4 +175,24 @@
        ExcelUtil.build(ExcelUtil.create(agvService.list(), Agv.class), response);
    }
    @PreAuthorize("hasAuthority('manager:agv:remove')")
    @OperationLog("Remove Agv From Map")
    @PostMapping("/agv/remove/from/map")
    public R removeFromMap(@RequestBody Agv agv) {
        AgvDetail agvDetail = agvDetailService.selectByAgvId(agv.getId());
        if (null != agvDetail) {
            LambdaUpdateWrapper<AgvDetail> wrapper = new LambdaUpdateWrapper<>();
            wrapper.set(AgvDetail::getCode, null)
                    .set(AgvDetail::getLastCode, null)
                    .set(AgvDetail::getUpdateBy, getLoginUserId())
                    .set(AgvDetail::getUpdateTime, new Date())
                    .eq(AgvDetail::getId, agvDetail.getId());
            if (!agvDetailService.update(null, wrapper)) {
                return R.error("Remove Fail");
            }
            mapDataDispatcher.modifyDynamicMatrix(MapDataDispatcher.MAP_DEFAULT_LEV, null, agv.getUuid(), true);
        }
        return R.ok("Remove Success").add(agv);
    }
}