| | |
| | | return Collections.emptyList(); |
| | | } |
| | | |
| | | public BaseFactory searchCenterByKeyWord(String keyWord) { |
| | | if (StringUtils.isBlank(keyWord)) { |
| | | return null; |
| | | } |
| | | |
| | | if (keyWord.contains("/")) { |
| | | return searchByHierarchy(keyWord); |
| | | } else { |
| | | return searchByCode(keyWord); |
| | | } |
| | | } |
| | | |
| | | private BaseFactory searchByHierarchy(String path) { |
| | | String[] levels = path.split("/"); |
| | | int depth = levels.length; |
| | | |
| | | // 检查层级深度 |
| | | if (depth < 2 || depth > 3) { |
| | | return null; // 无效的层级深度 |
| | | } |
| | | |
| | | // 查询第一级中心 |
| | | BaseFactory center = findFactory(levels[0], 1, null); |
| | | if (center == null) return null; |
| | | |
| | | // 查询第二级工区 |
| | | BaseFactory workArea = findFactory(levels[1], null, center.getId()); |
| | | if (workArea == null || depth == 2) return workArea; |
| | | |
| | | // 查询第三级工段 |
| | | return findFactory(levels[2], null, workArea.getId()); |
| | | } |
| | | |
| | | private BaseFactory searchByCode(String code) { |
| | | LambdaQueryWrapper<BaseFactory> query = new LambdaQueryWrapper<>(); |
| | | query.like(BaseFactory::getFactoryCode, code); |
| | | return this.baseMapper.selectOne(query); // 使用selectOne避免多个结果 |
| | | } |
| | | |
| | | private BaseFactory findFactory(String name, Integer category, String parentId) { |
| | | LambdaQueryWrapper<BaseFactory> query = new LambdaQueryWrapper<>(); |
| | | query.eq(BaseFactory::getFactoryName, name); |
| | | |
| | | if (category != null) query.eq(BaseFactory::getFactoryCategory, category); |
| | | if (parentId != null) query.eq(BaseFactory::getParentId, parentId); |
| | | |
| | | return this.baseMapper.selectOne(query); |
| | | } |
| | | |
| | | /** |
| | | * saveProductionData 对应 add 保存用户在页面添加的新的设备车间管理对象数据 |