bug--新增菜单报错
This commit is contained in:
@ -302,12 +302,8 @@ public class MenuServiceImpl extends BaseServiceImpl<MenuMapper, Menu> implement
|
|||||||
Menu menu = this.getById(resources.getId());
|
Menu menu = this.getById(resources.getId());
|
||||||
ValidationUtil.isNull(menu.getId(),"Permission","id",resources.getId());
|
ValidationUtil.isNull(menu.getId(),"Permission","id",resources.getId());
|
||||||
|
|
||||||
if(resources.getIFrame()){
|
isExitHttp(resources);
|
||||||
String http = "http://", https = "https://";
|
|
||||||
if (!(resources.getPath().toLowerCase().startsWith(http)||resources.getPath().toLowerCase().startsWith(https))) {
|
|
||||||
throw new BadRequestException("外链必须以http://或者https://开头");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
Menu menu1 = this.getOne(new QueryWrapper<Menu>().eq("name",resources.getName()));
|
Menu menu1 = this.getOne(new QueryWrapper<Menu>().eq("name",resources.getName()));
|
||||||
|
|
||||||
if(menu1 != null && !menu1.getId().equals(menu.getId())){
|
if(menu1 != null && !menu1.getId().equals(menu.getId())){
|
||||||
@ -320,6 +316,7 @@ public class MenuServiceImpl extends BaseServiceImpl<MenuMapper, Menu> implement
|
|||||||
throw new EntityExistException(Menu.class,"componentName",resources.getComponentName());
|
throw new EntityExistException(Menu.class,"componentName",resources.getComponentName());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
menu.setId(resources.getId());
|
menu.setId(resources.getId());
|
||||||
menu.setName(resources.getName());
|
menu.setName(resources.getName());
|
||||||
menu.setComponent(resources.getComponent());
|
menu.setComponent(resources.getComponent());
|
||||||
@ -339,21 +336,29 @@ public class MenuServiceImpl extends BaseServiceImpl<MenuMapper, Menu> implement
|
|||||||
@Override
|
@Override
|
||||||
@CacheEvict(allEntries = true)
|
@CacheEvict(allEntries = true)
|
||||||
public MenuDto create(Menu resources) {
|
public MenuDto create(Menu resources) {
|
||||||
if(this.getOne(lambdaQuery().eq(Menu::getName,resources.getName())) != null){
|
isExitHttp(resources);
|
||||||
|
if(this.getOne(new QueryWrapper<Menu>().eq("name",resources.getName())) != null){
|
||||||
throw new EntityExistException(Menu.class,"name",resources.getName());
|
throw new EntityExistException(Menu.class,"name",resources.getName());
|
||||||
}
|
}
|
||||||
if(StringUtils.isNotBlank(resources.getComponentName())){
|
if(StringUtils.isNotBlank(resources.getComponentName())){
|
||||||
if(this.getOne(lambdaQuery().eq(Menu::getComponentName,resources.getComponentName())) != null){
|
if(this.getOne(new QueryWrapper<Menu>().eq("component_name",resources.getComponentName())) != null){
|
||||||
throw new EntityExistException(Menu.class,"componentName",resources.getComponentName());
|
throw new EntityExistException(Menu.class,"componentName",resources.getComponentName());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
this.save(resources);
|
||||||
|
return generator.convert(resources,MenuDto.class);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 公共方法提取出来
|
||||||
|
* @param resources
|
||||||
|
*/
|
||||||
|
private void isExitHttp(Menu resources){
|
||||||
if(resources.getIFrame()){
|
if(resources.getIFrame()){
|
||||||
String http = "http://", https = "https://";
|
String http = "http://", https = "https://";
|
||||||
if (!(resources.getPath().toLowerCase().startsWith(http)||resources.getPath().toLowerCase().startsWith(https))) {
|
if (!(resources.getPath().toLowerCase().startsWith(http)||resources.getPath().toLowerCase().startsWith(https))) {
|
||||||
throw new BadRequestException("外链必须以http://或者https://开头");
|
throw new BadRequestException("外链必须以http://或者https://开头");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
this.save(resources);
|
|
||||||
return generator.convert(resources,MenuDto.class);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user