@GetMapping(value = "/ids")
    public RestResult<List<IdGeneratorVO>> ids() {
        List<IdGeneratorVO> result = new ArrayList<>();
        idGeneratorManager.getGeneratorMap().forEach((resource, idGenerator) -> {
            IdGeneratorVO vo = new IdGeneratorVO();
            vo.setResource(resource);
            
            IdGeneratorVO.IdInfo info = new IdGeneratorVO.IdInfo();
            info.setCurrentId(idGenerator.currentId());
            info.setWorkerId(idGenerator.workerId());
            vo.setInfo(info);
            
            result.add(vo);
        });
        
        return RestResultUtils.success(result);
    }
@Test
    void testIdInfo() {
        mockEnvironment.setProperty("nacos.core.snowflake.worker-id", "1");
        
        Map<String, IdGenerator> idGeneratorMap = new HashMap<>();
        idGeneratorMap.put("resource", new SnowFlowerIdGenerator());
        Mockito.when(idGeneratorManager.getGeneratorMap()).thenReturn(idGeneratorMap);
        RestResult<List<IdGeneratorVO>> res = coreOpsV2Controller.ids();
        
        assertTrue(res.ok());
        assertEquals(1, res.getData().size());
        assertEquals("resource", res.getData().get(0).getResource());
        assertEquals(1L, res.getData().get(0).getInfo().getWorkerId().longValue());
        assertEquals(0L, res.getData().get(0).getInfo().getCurrentId().longValue());
    }