zy-acs-manager/src/main/java/com/zy/acs/manager/manager/controller/MapController.java
@@ -445,7 +445,8 @@ @GetMapping("/area/get") public R areaGet(@RequestParam Long areaId) { Area area = areaService.getById(areaId); return R.ok().add(area); MapAreaResult areaResult = new MapAreaResult(); return R.ok().add(areaResult.sync(area)); } @PreAuthorize("hasAuthority('manager:loc:update')") zy-acs-manager/src/main/java/com/zy/acs/manager/manager/controller/result/MapAreaResult.java
@@ -1,10 +1,19 @@ package com.zy.acs.manager.manager.controller.result; import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.zy.acs.framework.common.SpringUtils; import com.zy.acs.manager.common.domain.AreaShapeDto; import com.zy.acs.manager.common.domain.MapPointDto; import com.zy.acs.manager.core.service.AreaGovernService; import com.zy.acs.manager.manager.entity.Area; import com.zy.acs.manager.manager.entity.AreaAgv; import com.zy.acs.manager.manager.service.AreaAgvService; import lombok.Data; import java.util.ArrayList; import java.util.List; import java.util.stream.Collectors; @Data public class MapAreaResult { @@ -31,6 +40,10 @@ private String memo; private List<String> codeList = new ArrayList<>(); private List<Long> agvList = new ArrayList<>(); public MapAreaResult sync(Area area) { this.setId(area.getId()); this.setName(area.getName()); @@ -46,6 +59,13 @@ this.setSpeedLimit(area.getSpeedLimit()); this.setPriority(area.getPriority()); this.setMemo(area.getMemo()); this.setCodeList(AreaGovernService.AREA_CODE.get(area.getId())); AreaAgvService areaAgvService = SpringUtils.getBean(AreaAgvService.class); List<AreaAgv> areaAgvList = areaAgvService.list(new LambdaQueryWrapper<AreaAgv>().eq(AreaAgv::getAreaId, area.getId())); this.setAgvList(areaAgvList.stream().map(AreaAgv::getAgvId).distinct().collect(Collectors.toList())); return this; } zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/AreaServiceImpl.java
@@ -4,12 +4,14 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.zy.acs.framework.common.Cools; import com.zy.acs.manager.common.domain.AreaShapeDto; import com.zy.acs.manager.core.service.AreaGovernService; import com.zy.acs.manager.manager.controller.param.MapAreaParam; import com.zy.acs.manager.manager.entity.Area; import com.zy.acs.manager.manager.enums.StatusType; import com.zy.acs.manager.manager.mapper.AreaMapper; import com.zy.acs.manager.manager.service.AreaService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -19,6 +21,8 @@ @Service("areaService") public class AreaServiceImpl extends ServiceImpl<AreaMapper, Area> implements AreaService { @Autowired private AreaGovernService areaGovernService; @Override @Transactional(rollbackFor = Exception.class) @@ -52,6 +56,9 @@ area.setMemo(param.getMemo()); if (!this.save(area)) { log.error("failed to save area"); } else { // update code list in area map areaGovernService.reSet(area); } return area;