use of com.albedo.java.modules.sys.domain.MenuDo in project albedo by somowhere.
the class MenuDoResourceIntTest method createMenu.
@Test
@Transactional(rollbackFor = Exception.class)
public void createMenu() throws Exception {
List<MenuDo> databaseSizeBeforeCreate = menuService.list();
// Create the Menu
restMenuMockMvc.perform(post(DEFAULT_API_URL).contentType(TestUtil.APPLICATION_JSON_UTF8).content(TestUtil.convertObjectToJsonBytes(menu))).andExpect(status().isOk());
// Validate the Menu in the database
List<MenuDo> menuDoList = menuService.list();
assertThat(menuDoList).hasSize(databaseSizeBeforeCreate.size() + 1);
MenuDo testMenuDo = menuService.getOne(Wrappers.<MenuDo>query().lambda().eq(MenuDo::getName, menu.getName()));
assertThat(testMenuDo.getName()).isEqualTo(DEFAULT_NAME);
assertThat(testMenuDo.getPermission()).isEqualTo(DEFAULT_PERMISSION);
assertThat(testMenuDo.getIcon()).isEqualTo(DEFAULT_ICON);
assertThat(testMenuDo.getSort()).isEqualTo(DEFAULT_SORT);
assertThat(testMenuDo.getParentId()).isEqualTo(anotherMenu.getId());
assertThat(testMenuDo.getParentIds()).contains(String.valueOf(anotherMenu.getId()));
assertThat(testMenuDo.getComponent()).isEqualTo(DEFAULT_COMPONENT);
assertThat(testMenuDo.getHidden()).isEqualTo(DEFAULT_HIDDEN);
assertThat(testMenuDo.getCache()).isEqualTo(DEFAULT_CACHE);
assertThat(testMenuDo.getIframe()).isEqualTo(DEFAULT_IFRAME);
assertThat(testMenuDo.getType()).isEqualTo(DEFAULT_TYPE);
assertThat(testMenuDo.getPath()).isEqualTo(DEFAULT_PATH);
assertThat(testMenuDo.isLeaf()).isEqualTo(true);
assertThat(testMenuDo.getDescription()).isEqualTo(DEFAULT_DESCRIPTION);
assertThat(testMenuDo.getDelFlag()).isEqualTo(MenuDo.FLAG_NORMAL);
}
use of com.albedo.java.modules.sys.domain.MenuDo in project albedo by somowhere.
the class MenuDoResourceIntTest method testMenuEquals.
@Test
@Transactional(rollbackFor = Exception.class)
public void testMenuEquals() throws Exception {
TestUtil.equalsVerifier(MenuDo.class);
MenuDo menuDo1 = new MenuDo();
menuDo1.setId(1L);
menuDo1.setName("Menu1");
MenuDo menuDo2 = new MenuDo();
menuDo2.setId(menuDo1.getId());
menuDo2.setName(menuDo1.getName());
assertThat(menuDo1).isEqualTo(menuDo2);
menuDo2.setId(2L);
menuDo2.setName("Menu2");
assertThat(menuDo1).isNotEqualTo(menuDo2);
menuDo1.setId(null);
assertThat(menuDo1).isNotEqualTo(menuDo2);
}
use of com.albedo.java.modules.sys.domain.MenuDo in project albedo by somowhere.
the class MenuDoResourceIntTest method updateMenu.
@Test
@Transactional(rollbackFor = Exception.class)
public void updateMenu() throws Exception {
// Initialize the database
menuService.saveOrUpdate(menu);
int databaseSizeBeforeUpdate = menuService.list().size();
// Update the menu
MenuDo updatedMenuDo = menuService.getById(menu.getId());
MenuDto managedMenuVM = new MenuDto();
managedMenuVM.setName(UPDATED_NAME);
managedMenuVM.setPermission(UPDATED_PERMISSION);
managedMenuVM.setIcon(UPDATED_ICON);
managedMenuVM.setSort(UPDATED_SORT);
managedMenuVM.setHidden(UPDATED_HIDDEN);
managedMenuVM.setCache(UPDATED_CACHE);
managedMenuVM.setIframe(UPDATED_IFRAME);
managedMenuVM.setParentId(UPDATED_PARENT_ID);
managedMenuVM.setComponent(UPDATED_COMPONENT);
managedMenuVM.setPath(UPDATED_PATH);
managedMenuVM.setType(UPDATED_TYPE);
managedMenuVM.setDescription(UPDATED_DESCRIPTION);
managedMenuVM.setId(updatedMenuDo.getId());
restMenuMockMvc.perform(post(DEFAULT_API_URL).contentType(TestUtil.APPLICATION_JSON_UTF8).content(TestUtil.convertObjectToJsonBytes(managedMenuVM))).andExpect(status().isOk()).andExpect(jsonPath("$.code").value(CommonConstants.SUCCESS));
// Validate the Menu in the database
List<MenuDo> menuDoList = menuService.list();
assertThat(menuDoList).hasSize(databaseSizeBeforeUpdate);
MenuDo testMenuDo = menuService.getById(updatedMenuDo.getId());
assertThat(testMenuDo.getName()).isEqualTo(UPDATED_NAME);
assertThat(testMenuDo.getPermission()).isEqualTo(UPDATED_PERMISSION);
assertThat(testMenuDo.getIcon()).isEqualTo(UPDATED_ICON);
assertThat(testMenuDo.getHidden()).isEqualTo(UPDATED_HIDDEN);
assertThat(testMenuDo.getCache()).isEqualTo(UPDATED_CACHE);
assertThat(testMenuDo.getIframe()).isEqualTo(UPDATED_IFRAME);
assertThat(testMenuDo.getSort()).isEqualTo(UPDATED_SORT);
assertThat(testMenuDo.getParentId()).isEqualTo(UPDATED_PARENT_ID);
// assertThat(testMenu.getParentIds()).contains(UPDATED_PARENT_ID);
assertThat(testMenuDo.getComponent()).isEqualTo(UPDATED_COMPONENT);
assertThat(testMenuDo.getPath()).isEqualTo(UPDATED_PATH);
assertThat(testMenuDo.getType()).isEqualTo(UPDATED_TYPE);
assertThat(testMenuDo.isLeaf()).isEqualTo(true);
assertThat(testMenuDo.getDescription()).isEqualTo(UPDATED_DESCRIPTION);
assertThat(testMenuDo.getDelFlag()).isEqualTo(MenuDo.FLAG_NORMAL);
}
use of com.albedo.java.modules.sys.domain.MenuDo in project albedo by somowhere.
the class MenuServiceImpl method saveByGenScheme.
@Override
public boolean saveByGenScheme(GenSchemeDto schemeDto) {
String moduleName = schemeDto.getSchemeName(), parentMenuId = schemeDto.getParentMenuId(), url = schemeDto.getUrl();
String permission = StringUtil.toCamelCase(StringUtil.lowerFirst(url), CharUtil.DASHED).replace(StringUtil.SLASH, "_").substring(1), permissionLike = permission.substring(0, permission.length() - 1);
List<MenuDo> currentMenuListDo = repository.selectList(Wrappers.<MenuDo>query().lambda().eq(MenuDo::getName, moduleName).or().likeLeft(MenuDo::getPermission, permissionLike));
for (MenuDo currentMenuDo : currentMenuListDo) {
if (currentMenuDo != null) {
List<Long> idList = repository.selectList(Wrappers.<MenuDo>query().lambda().likeLeft(MenuDo::getPermission, permissionLike).or(i -> i.eq(MenuDo::getId, currentMenuDo.getId()).or().eq(MenuDo::getParentId, currentMenuDo.getId()))).stream().map(MenuDo::getId).collect(Collectors.toList());
roleMenuRepository.delete(Wrappers.<RoleMenuDo>query().lambda().in(RoleMenuDo::getMenuId, idList));
repository.deleteBatchIds(idList);
}
}
MenuDo parentMenuDo = repository.selectById(parentMenuId);
ArgumentAssert.notNull(parentMenuDo, StringUtil.toAppendStr("根据模块id[", parentMenuId, "无法查询到模块信息]"));
MenuDo module = new MenuDo();
module.setName(moduleName);
module.setParentId(parentMenuDo.getId());
module.setType(MenuDo.TYPE_MENU);
module.setIcon("app");
module.setPath(StringUtil.toRevertCamelCase(StringUtil.lowerFirst(schemeDto.getClassName()), CharUtil.DASHED));
module.setComponent(url.substring(1) + "index");
save(module);
MenuDo moduleView = new MenuDo();
moduleView.setParent(module);
moduleView.setName(moduleName + "查看");
moduleView.setPermission(permission + "view");
moduleView.setParentId(module.getId());
moduleView.setType(MenuDo.TYPE_BUTTON);
moduleView.setSort(20);
save(moduleView);
MenuDo moduleEdit = new MenuDo();
moduleEdit.setParent(module);
moduleEdit.setName(moduleName + "编辑");
moduleEdit.setPermission(permission + "edit");
moduleEdit.setParentId(module.getId());
moduleEdit.setType(MenuDo.TYPE_BUTTON);
moduleEdit.setSort(40);
save(moduleEdit);
MenuDo moduleDelete = new MenuDo();
moduleDelete.setParent(module);
moduleDelete.setName(moduleName + "删除");
moduleDelete.setPermission(permission + "del");
moduleDelete.setParentId(module.getId());
moduleDelete.setType(MenuDo.TYPE_BUTTON);
moduleDelete.setSort(80);
save(moduleDelete);
return true;
}
use of com.albedo.java.modules.sys.domain.MenuDo in project albedo by somowhere.
the class MenuServiceImpl method sortUpdate.
@Override
public void sortUpdate(MenuSortDto menuSortDto) {
menuSortDto.getMenuSortList().forEach(menuSortVo -> {
MenuDo menuDo = repository.selectById(menuSortVo.getId());
if (menuDo != null) {
menuDo.setSort(menuSortVo.getSort());
repository.updateById(menuDo);
}
});
}
Aggregations