1
zhang
2025-12-31 8384040c3204f1bfa8fe30d264ef87b4d3b317ff
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,19 +41,8 @@
    private CodeService codeService;
    @Autowired
    private TaskService taskService;
//    @PreAuthorize("hasAuthority('manager:agv:list')")
//    @PostMapping("/agv/page")
//    public R page(@RequestBody Map<String, Object> map) {
//        BaseParam baseParam = buildParam(map, BaseParam.class);
//        PageParam<Agv, BaseParam> pageParam = new PageParam<>(baseParam, Agv.class);
//        PageParam<Agv, BaseParam> page = agvService.page(pageParam, pageParam.buildWrapper(true));
//        for (Agv agv : page.getRecords()) {
//            AgvDetail agvDetail = agvDetailService.selectByAgvId(agv.getId());
//            agv.setAgvDetail(agvDetail);
//        }
//        return R.ok().add(page);
//    }
    @Autowired
    private MapDataDispatcher mapDataDispatcher;
    @PreAuthorize("hasAuthority('manager:agv:list')")
    @PostMapping("/agv/page")
@@ -61,7 +52,6 @@
        PageResult<AgvResult> page = agvService.pageRel(pageParam);
        for (AgvResult result : page.getRecords()) {
            result.sync(agvDetailService.selectByAgvId(result.getId()), codeService, taskService, agvService);
            if (result.getUuid().equals("2")) { result.setOnline(true); }
        }
        return R.ok().add(page);
    }
@@ -84,12 +74,11 @@
        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);
            }
@@ -129,27 +118,19 @@
    @OperationLog("Update Agv")
    @PostMapping("/agv/update")
    public R update(@RequestBody Agv agv) {
        if (agvService.count(new LambdaQueryWrapper<Agv>()
                .eq(Agv::getUuid, agv.getUuid())
                .ne(Agv::getId, agv.getId())) > 0) {
            return R.error("Update Fail");
        }
        agv.setUpdateBy(getLoginUserId());
        agv.setUpdateTime(new Date());
        if (!agvService.updateById(agv)) {
            return R.error("Update Fail");
        }
        return R.ok("Update Success").add(agv);
        return R.ok("Update Success").add(agvService.modify(agv, getLoginUserId()));
    }
    @PreAuthorize("hasAuthority('manager:agv:remove')")
    @OperationLog("Delete Agv")
    @PostMapping("/agv/remove/{ids}")
    public R remove(@PathVariable Long[] ids) {
        if (!agvService.removeByIds(Arrays.asList(ids))) {
            return R.error("Delete Fail");
        Long userId = getLoginUserId();
        List<Long> agvIds = new ArrayList<>();
        for (Long agvId : ids) {
            agvIds.add(agvService.delete(agvId, userId));
        }
        return R.ok("Delete Success").add(ids);
        return R.ok("Delete Success").add(agvIds);
    }
    @PreAuthorize("hasAuthority('manager:agv:list')")
@@ -172,4 +153,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);
    }
}