#
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,6 +12,7 @@
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;
@@ -39,6 +41,8 @@
    private CodeService codeService;
    @Autowired
    private TaskService taskService;
    @Autowired
    private MapDataDispatcher mapDataDispatcher;
//    @PreAuthorize("hasAuthority('manager:agv:list')")
//    @PostMapping("/agv/page")
@@ -82,11 +86,13 @@
    public R get(@PathVariable("id") Long 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.getById(agv.getAgvModel());
            AgvModel agvModel = agvModelService.getByAgvId(agv.getId());
            if (null != agvModel) {
                agv.setAgvModelData(agvModel);
            }
@@ -169,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);
    }
}