Compare commits

...

3 Commits

Author SHA1 Message Date
aikai
954ab0e034 Merge branch 'dev' of http://git.znkjfw.com/ak/zn-cloud-wcs into dev
# Conflicts:
#	yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/positionmap/PositionMapItemMapper.java
#	yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/positionmap/PositionMapLineServiceImpl.java
#	yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/positionmap/PositionMapServiceImpl.java
#	yudao-module-system/yudao-module-system-biz/src/main/resources/application-local.yaml
#	yudao-module-system/yudao-module-system-biz/src/main/resources/mapper/positionmap/PositionMapItemMapper.xml
2025-06-21 11:43:51 +08:00
aikai
261dc55472 chore(system): 本地环境 Redis 密码配置
在 application-local.yaml 文件中添加 Redis 密码配置,以增强生产环境的安全性。
2025-06-21 11:41:28 +08:00
aikai
390576cb2f refactor(system): 优化位置地图功能和路径规划相关代码
- 移除 Redis 密码配置
- 优化 CommonConfigService、RobotTaskDetailService 等服务的注入方式
- 改进 PositionMapItemMapper 接口和 XML 文件
- 优化 PathPlanningServiceImpl 和 PositionMapLineServiceImpl 中的代码
- 删除未使用的 CommonApi 和 mapStopService 引用
2025-06-21 11:40:58 +08:00
10 changed files with 34 additions and 13 deletions

View File

@ -0,0 +1,14 @@
package cn.iocoder.yudao.module.system.controller.admin.positionmap.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.math.BigDecimal;
@Data
public class PositionMapIdNumMapVO {
@Schema(description = "主键ID")
private Long id;
@Schema(description = "序号")
private Long sortNum;
}

View File

@ -8,12 +8,10 @@ import cn.iocoder.yudao.module.mqtt.api.task.dto.Pose2ds;
import cn.iocoder.yudao.module.system.controller.admin.positionmap.dto.RobotPositionMapDTO; import cn.iocoder.yudao.module.system.controller.admin.positionmap.dto.RobotPositionMapDTO;
import cn.iocoder.yudao.module.system.controller.admin.positionmap.vo.PositionMapItemPageReqVO; import cn.iocoder.yudao.module.system.controller.admin.positionmap.vo.PositionMapItemPageReqVO;
import cn.iocoder.yudao.module.system.dal.dataobject.positionmap.PositionMapItemDO; import cn.iocoder.yudao.module.system.dal.dataobject.positionmap.PositionMapItemDO;
import org.apache.ibatis.annotations.MapKey;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import java.util.List; import java.util.List;
import java.util.Map;
/** /**
* 仓库点位地图子表 Mapper * 仓库点位地图子表 Mapper
@ -59,13 +57,13 @@ public interface PositionMapItemMapper extends BaseMapperX<PositionMapItemDO> {
/** /**
* 将laneId设为空 * 将laneId设为空
*
* @param mapId * @param mapId
* @param laneId * @param laneId
*/ */
void emptyLaneId(@Param("mapId") Long mapId, @Param("laneId") Long laneId); void emptyLaneId(@Param("mapId") Long mapId, @Param("laneId") Long laneId);
/** /**
*
* @param list * @param list
* @return * @return
*/ */
@ -73,12 +71,14 @@ public interface PositionMapItemMapper extends BaseMapperX<PositionMapItemDO> {
/** /**
* 删除这个地图的点 * 删除这个地图的点
*
* @param mapId * @param mapId
*/ */
void deleteByMapId(@Param("mapId") Long mapId); void deleteByMapId(@Param("mapId") Long mapId);
/** /**
* 更新车辆编号 * 更新车辆编号
*
* @param oldRobotNo * @param oldRobotNo
* @param newRobotNo * @param newRobotNo
*/ */
@ -86,12 +86,12 @@ public interface PositionMapItemMapper extends BaseMapperX<PositionMapItemDO> {
/** /**
* 释放车辆 * 释放车辆
*
* @param robotNo * @param robotNo
*/ */
void clearRobotNo(@Param("robotNo") String robotNo); void clearRobotNo(@Param("robotNo") String robotNo);
/** /**
*
* @param ids * @param ids
* @return * @return
*/ */

View File

@ -2,20 +2,21 @@ package cn.iocoder.yudao.module.system.handler.mapnode;
import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.iocoder.yudao.framework.common.enums.NodeTypeEnum; import cn.iocoder.yudao.framework.common.enums.NodeTypeEnum;
import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils;
import cn.iocoder.yudao.module.system.controller.admin.positionmap.dto.NodeBaseDTO; import cn.iocoder.yudao.module.system.controller.admin.positionmap.dto.NodeBaseDTO;
import cn.iocoder.yudao.module.system.dal.dataobject.positionmap.PositionMapItemDO; import cn.iocoder.yudao.module.system.dal.dataobject.positionmap.PositionMapItemDO;
import cn.iocoder.yudao.module.system.handler.mapnode.strategy.*; import cn.iocoder.yudao.module.system.handler.mapnode.strategy.*;
import cn.iocoder.yudao.module.system.service.positionmap.PositionMapItemService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import javax.annotation.PostConstruct; import javax.annotation.PostConstruct;
import java.util.*; import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@Slf4j @Slf4j
@Component @Component
@ -23,8 +24,6 @@ public class NodeProcessingContext {
private final Map<Integer, NodeProcessingStrategy> strategyMap = new HashMap<>(); private final Map<Integer, NodeProcessingStrategy> strategyMap = new HashMap<>();
@Autowired @Autowired
private PositionMapItemService positionMapItemService;
@Autowired
private MapNodeStrategyImpl mapNodeStrategyImpl; private MapNodeStrategyImpl mapNodeStrategyImpl;
@Autowired @Autowired
private ChangeNodeStrategyImpl changeNodeStrategyImpl; private ChangeNodeStrategyImpl changeNodeStrategyImpl;
@ -33,6 +32,7 @@ public class NodeProcessingContext {
@Autowired @Autowired
private ParkingSpotStrategyImpl parkingSpotStrategyImpl; private ParkingSpotStrategyImpl parkingSpotStrategyImpl;
@Autowired @Autowired
@Lazy
private DeviceStrategyImpl deviceStrategyImpl; private DeviceStrategyImpl deviceStrategyImpl;
/** /**

View File

@ -13,6 +13,7 @@ import cn.iocoder.yudao.module.system.service.houselocation.HouseLocationService
import cn.iocoder.yudao.module.system.service.robot.RobotTaskDetailService; import cn.iocoder.yudao.module.system.service.robot.RobotTaskDetailService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import javax.annotation.Resource; import javax.annotation.Resource;
@ -34,6 +35,7 @@ public class HouseLocationStrategyImpl implements NodeProcessingStrategy {
private HouseLocationService houseLocationService; private HouseLocationService houseLocationService;
@Resource @Resource
@Lazy
private RobotTaskDetailService taskDetailService; private RobotTaskDetailService taskDetailService;
//库位编号格式 - 第一个通配符为地图id 第二个通配符为随机数四位最后一个通配符为库位点层数 //库位编号格式 - 第一个通配符为地图id 第二个通配符为随机数四位最后一个通配符为库位点层数

View File

@ -21,6 +21,7 @@ import com.alibaba.fastjson.TypeReference;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.google.gson.Gson; import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken; import com.google.gson.reflect.TypeToken;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
@ -47,6 +48,7 @@ public class CommonConfigServiceImpl implements CommonConfigService {
private CommonConfigMapper configMapper; private CommonConfigMapper configMapper;
@Resource @Resource
@Lazy
private ToolsService toolsService; private ToolsService toolsService;
@Resource @Resource

View File

@ -58,6 +58,7 @@ import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import javax.annotation.Resource; import javax.annotation.Resource;
@ -118,6 +119,7 @@ public class PathPlanningServiceImpl implements PathPlanningService {
private CommonConfigService configService; private CommonConfigService configService;
@Resource @Resource
@Lazy
private PositionMapService positionMapService; private PositionMapService positionMapService;
@Resource @Resource
@ -130,6 +132,7 @@ public class PathPlanningServiceImpl implements PathPlanningService {
private PositionChangePointBindingService positionChangePointBindingService; private PositionChangePointBindingService positionChangePointBindingService;
@Resource @Resource
@Lazy
private RemoteControllerInformationService controllerInformationService; private RemoteControllerInformationService controllerInformationService;
@Resource @Resource

View File

@ -6,6 +6,7 @@ import cn.hutool.core.util.ObjectUtil;
import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils; import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils; import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.module.system.controller.admin.positionmap.vo.PositionMapIdNumMapVO;
import cn.iocoder.yudao.module.system.controller.admin.positionmap.vo.PositionMapLinePageReqVO; import cn.iocoder.yudao.module.system.controller.admin.positionmap.vo.PositionMapLinePageReqVO;
import cn.iocoder.yudao.module.system.controller.admin.positionmap.vo.PositionMapLineSaveReqVO; import cn.iocoder.yudao.module.system.controller.admin.positionmap.vo.PositionMapLineSaveReqVO;
import cn.iocoder.yudao.module.system.dal.dataobject.positionmap.PositionMapItemDO; import cn.iocoder.yudao.module.system.dal.dataobject.positionmap.PositionMapItemDO;

View File

@ -6,7 +6,6 @@ import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils; import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils; import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils;
import cn.iocoder.yudao.module.mqtt.api.common.CommonApi;
import cn.iocoder.yudao.module.mqtt.api.task.dto.RobotSimulationPoseDTO; import cn.iocoder.yudao.module.mqtt.api.task.dto.RobotSimulationPoseDTO;
import cn.iocoder.yudao.module.system.api.path.PathApi; import cn.iocoder.yudao.module.system.api.path.PathApi;
import cn.iocoder.yudao.module.system.api.remote.dto.RemoteRobotDTO; import cn.iocoder.yudao.module.system.api.remote.dto.RemoteRobotDTO;
@ -105,6 +104,7 @@ public class PositionMapServiceImpl extends ServiceImpl<PositionMapMapper, Posit
private RobotMapStopService robotMapStopService; private RobotMapStopService robotMapStopService;
@Resource @Resource
@Lazy
private RobotTaskDetailService taskDetailService; private RobotTaskDetailService taskDetailService;
@Resource @Resource

View File

@ -28,7 +28,6 @@ import cn.iocoder.yudao.module.system.enums.config.CommandConfigTypeEnum;
import cn.iocoder.yudao.module.system.enums.item.PositionMapItemEnum; import cn.iocoder.yudao.module.system.enums.item.PositionMapItemEnum;
import cn.iocoder.yudao.module.system.enums.robot.RobotWarnType; import cn.iocoder.yudao.module.system.enums.robot.RobotWarnType;
import cn.iocoder.yudao.module.system.enums.robot.task.RobotCommandTypeEnum; import cn.iocoder.yudao.module.system.enums.robot.task.RobotCommandTypeEnum;
import cn.iocoder.yudao.module.system.service.config.CommonConfigService;
import cn.iocoder.yudao.module.system.service.positionmap.PositionMapItemService; import cn.iocoder.yudao.module.system.service.positionmap.PositionMapItemService;
import cn.iocoder.yudao.module.system.service.positionmap.PositionMapService; import cn.iocoder.yudao.module.system.service.positionmap.PositionMapService;
import cn.iocoder.yudao.module.system.service.robot.RobotInformationService; import cn.iocoder.yudao.module.system.service.robot.RobotInformationService;

View File

@ -279,4 +279,4 @@ mqtt:
# 表示允许同时在传输中的最大消息数量 # 表示允许同时在传输中的最大消息数量
maxInflight: 1000 maxInflight: 1000
timeout: 10 timeout: 10
keepalive: 20 keepalive: 20