RuntimeException 改成 BizException

master
kanade 3 years ago
parent 85eb4b794d
commit fdb66ce505

@ -4,6 +4,8 @@ import com.zh.project0512.model.dto.OperationRoleJurisdictionDTO;
import com.zh.project0512.model.dto.UserJurisdictionFBIDTO;
import com.zh.project0512.model.vo.UserJurisdictionFBRIVo;
import com.zh.project0512.service.IUserJurisdictionService;
import com.zh.project0512.utils.BizException;
import com.zh.project0512.utils.result.HttpStatusEnum;
import com.zh.project0512.utils.result.Result;
import com.zh.project0512.utils.result.ResultList;
import io.swagger.v3.oas.annotations.tags.Tag;
@ -36,7 +38,7 @@ public class UserJurisdictionController {
if (userJurisdictionService.operationRoleJurisdiction(operationRoleJurisdictionDTO)){
return Result.success("操作角色权限","操作成功");
}else {
throw new RuntimeException("操作失败");
throw new BizException(HttpStatusEnum.CUSTOM_EXCEPTION,"操作失败");
}
}

@ -6,6 +6,8 @@ import com.zh.project0512.model.dto.UserRoleListDTO;
import com.zh.project0512.model.dto.UserRoleUpdateDTO;
import com.zh.project0512.model.vo.UserRoleListVo;
import com.zh.project0512.service.IUserRoleService;
import com.zh.project0512.utils.BizException;
import com.zh.project0512.utils.result.HttpStatusEnum;
import com.zh.project0512.utils.result.Result;
import com.zh.project0512.utils.result.ResultPageInfo;
import io.swagger.v3.oas.annotations.tags.Tag;
@ -48,7 +50,7 @@ public class UserRoleController {
if (userRoleService.insert(userRoleInsertDTO)){
return Result.success("添加用户角色","操作成功");
}else {
throw new RuntimeException("添加失败");
throw new BizException(HttpStatusEnum.CUSTOM_EXCEPTION,"添加失败");
}
}
@ -62,7 +64,7 @@ public class UserRoleController {
if (userRoleService.update(userRoleUpdateDTO)){
return Result.success("修改用户角色","操作成功");
}else {
throw new RuntimeException("修改失败");
throw new BizException(HttpStatusEnum.CUSTOM_EXCEPTION,"修改失败");
}
}

@ -3,6 +3,7 @@ package com.zh.project0512.model;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@ -15,6 +16,7 @@ import java.io.Serializable;
@Data
@NoArgsConstructor
@AllArgsConstructor
@TableName("userMenus")
public class UserMenus implements Serializable {
private static final long serialVersionUID = 1L;

@ -3,6 +3,7 @@ package com.zh.project0512.model;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@ -15,6 +16,7 @@ import java.io.Serializable;
@Data
@NoArgsConstructor
@AllArgsConstructor
@TableName("userOperation")
public class UserOperation implements Serializable {
private static final long serialVersionUID = 1L;

@ -1,20 +1,16 @@
package com.zh.project0512.serviceImpl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.zh.project0512.mapper.UserJurisdictionMapper;
import com.zh.project0512.mapper.UserMenusMapper;
import com.zh.project0512.mapper.UserOperationMapper;
import com.zh.project0512.mapper.UserRoleJurisdictionMapper;
import com.zh.project0512.model.UserJurisdiction;
import com.zh.project0512.model.UserMenus;
import com.zh.project0512.model.UserOperation;
import com.zh.project0512.model.UserRoleJurisdiction;
import com.zh.project0512.mapper.*;
import com.zh.project0512.model.*;
import com.zh.project0512.model.dto.OperationRoleJurisdictionDTO;
import com.zh.project0512.model.dto.UserJurisdictionFBIDTO;
import com.zh.project0512.model.vo.UserJurisdictionFBRIOperationVo;
import com.zh.project0512.model.vo.UserJurisdictionFBRIVo;
import com.zh.project0512.service.IUserJurisdictionService;
import com.zh.project0512.utils.BizException;
import com.zh.project0512.utils.PropertyUtils;
import com.zh.project0512.utils.result.HttpStatusEnum;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@ -32,6 +28,8 @@ public class UserJurisdictionServiceImpl implements IUserJurisdictionService {
UserOperationMapper userOperationMapper;
@Resource
UserJurisdictionMapper userJurisdictionMapper;
@Resource
UserRoleMapper userRoleMapper;
@Override
@Transactional
@ -57,6 +55,11 @@ public class UserJurisdictionServiceImpl implements IUserJurisdictionService {
@Override
public List<UserJurisdictionFBRIVo> findByRoleId(UserJurisdictionFBIDTO userJurisdictionFBIDTO) {
UserRole userRole = userRoleMapper.selectById(userJurisdictionFBIDTO.getRoleId());
if (userRole == null){
throw new BizException(HttpStatusEnum.CUSTOM_EXCEPTION,"记录不存在");
}
ArrayList<UserJurisdictionFBRIVo> userJurisdictionFBRIVos = new ArrayList<>();
//查询所有菜单
@ -78,7 +81,7 @@ public class UserJurisdictionServiceImpl implements IUserJurisdictionService {
UserOperation userOperation = userOperationMapper.selectById(userJurisdiction.getOperationId());
if (userOperation != null){
UserJurisdictionFBRIOperationVo operationVo = new UserJurisdictionFBRIOperationVo();
PropertyUtils.copyProperties(userJurisdiction,operationVo);
PropertyUtils.copyProperties(userOperation,operationVo);
operationVo.setCheck(false);//默认为未选中
//查询该操作是否选中,如果选中则菜单也被选中
QueryWrapper<UserRoleJurisdiction> queryWrapper5 = new QueryWrapper<>();

@ -12,8 +12,10 @@ import com.zh.project0512.model.dto.UserRoleUpdateDTO;
import com.zh.project0512.model.vo.UserPointsRecordListVo;
import com.zh.project0512.model.vo.UserRoleListVo;
import com.zh.project0512.service.IUserRoleService;
import com.zh.project0512.utils.BizException;
import com.zh.project0512.utils.PropertyUtils;
import com.zh.project0512.utils.page.PageInfo;
import com.zh.project0512.utils.result.HttpStatusEnum;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
@ -61,7 +63,7 @@ public class UserRoleServiceImpl implements IUserRoleService {
public boolean update(UserRoleUpdateDTO userRoleUpdateDTO) {
UserRole userRole = userRoleMapper.selectById(userRoleUpdateDTO.getId());
if (userRole == null){
throw new RuntimeException("记录不存在");
throw new BizException(HttpStatusEnum.CUSTOM_EXCEPTION,"记录不存在");
}
userRole.setName(userRoleUpdateDTO.getName());

@ -0,0 +1,26 @@
package com.zh.project0512.utils;
import com.zh.project0512.utils.result.HttpStatusEnum;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
@Getter
@AllArgsConstructor
@NoArgsConstructor
public class BizException extends RuntimeException{
private static final long serialVersionUID = 1L;
private Integer code;
private String message;
public BizException(HttpStatusEnum httpStatusEnum) {
this.code = httpStatusEnum.code();
this.message = httpStatusEnum.reasonPhraseCN();
}
public BizException(HttpStatusEnum httpStatusEnum, String message) {
this.code = httpStatusEnum.code();
this.message = message;
}
}

@ -46,7 +46,7 @@ public class PropertyUtils {
}
}
} catch (Exception e) {
throw new RuntimeException("PropertyUtils 属性转换错误");
throw new BizException(HttpStatusEnum.CUSTOM_EXCEPTION,"PropertyUtils 属性转换错误");
// throw new BizException(HttpStatusEnum.CUSTOM_EXCEPTION,"PropertyUtils 属性转换错误");
}
@ -89,8 +89,7 @@ public class PropertyUtils {
}
}
} catch (Exception e) {
throw new RuntimeException("PropertyUtils 属性转换错误");
// throw new BizException(HttpStatusEnum.CUSTOM_EXCEPTION,"PropertyUtils 属性转换错误");
throw new BizException(HttpStatusEnum.CUSTOM_EXCEPTION,"PropertyUtils 属性转换错误");
}
}

@ -9,8 +9,10 @@ import org.springframework.validation.BindException;
import org.springframework.validation.ObjectError;
import org.springframework.web.bind.MethodArgumentNotValidException;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestControllerAdvice;
import javax.servlet.http.HttpServletRequest;
import javax.validation.ConstraintViolation;
import javax.validation.ConstraintViolationException;
import javax.validation.ValidationException;
@ -58,4 +60,17 @@ public class RestExceptionHandler {
}
return new ResponseEntity<>(result,HttpStatus.BAD_REQUEST);
}
/**
*
* @param req
* @param e
* @return
*/
@ExceptionHandler(value = BizException.class)
@ResponseBody
public Result<String> bizExceptionHandler(HttpServletRequest req, BizException e){
// log.error("发生业务异常!原因是:{}",e.getMessage());
return Result.fail(e.getCode(),e.getMessage());
}
}

@ -81,4 +81,7 @@ public class Result<T> {
return new Result<T>(false, httpStatusEnum.code(), msg);
}
public static <T> Result<T> fail(int code, String msg) {
return new Result<T>(false, code, msg);
}
}

Loading…
Cancel
Save