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.dto.UserJurisdictionFBIDTO;
import com.zh.project0512.model.vo.UserJurisdictionFBRIVo; import com.zh.project0512.model.vo.UserJurisdictionFBRIVo;
import com.zh.project0512.service.IUserJurisdictionService; 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.Result;
import com.zh.project0512.utils.result.ResultList; import com.zh.project0512.utils.result.ResultList;
import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.tags.Tag;
@ -36,7 +38,7 @@ public class UserJurisdictionController {
if (userJurisdictionService.operationRoleJurisdiction(operationRoleJurisdictionDTO)){ if (userJurisdictionService.operationRoleJurisdiction(operationRoleJurisdictionDTO)){
return Result.success("操作角色权限","操作成功"); return Result.success("操作角色权限","操作成功");
}else { }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.dto.UserRoleUpdateDTO;
import com.zh.project0512.model.vo.UserRoleListVo; import com.zh.project0512.model.vo.UserRoleListVo;
import com.zh.project0512.service.IUserRoleService; 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.Result;
import com.zh.project0512.utils.result.ResultPageInfo; import com.zh.project0512.utils.result.ResultPageInfo;
import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.tags.Tag;
@ -48,7 +50,7 @@ public class UserRoleController {
if (userRoleService.insert(userRoleInsertDTO)){ if (userRoleService.insert(userRoleInsertDTO)){
return Result.success("添加用户角色","操作成功"); return Result.success("添加用户角色","操作成功");
}else { }else {
throw new RuntimeException("添加失败"); throw new BizException(HttpStatusEnum.CUSTOM_EXCEPTION,"添加失败");
} }
} }
@ -62,7 +64,7 @@ public class UserRoleController {
if (userRoleService.update(userRoleUpdateDTO)){ if (userRoleService.update(userRoleUpdateDTO)){
return Result.success("修改用户角色","操作成功"); return Result.success("修改用户角色","操作成功");
}else { }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.IdType;
import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.Data; import lombok.Data;
import lombok.NoArgsConstructor; import lombok.NoArgsConstructor;
@ -15,6 +16,7 @@ import java.io.Serializable;
@Data @Data
@NoArgsConstructor @NoArgsConstructor
@AllArgsConstructor @AllArgsConstructor
@TableName("userMenus")
public class UserMenus implements Serializable { public class UserMenus implements Serializable {
private static final long serialVersionUID = 1L; 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.IdType;
import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.Data; import lombok.Data;
import lombok.NoArgsConstructor; import lombok.NoArgsConstructor;
@ -15,6 +16,7 @@ import java.io.Serializable;
@Data @Data
@NoArgsConstructor @NoArgsConstructor
@AllArgsConstructor @AllArgsConstructor
@TableName("userOperation")
public class UserOperation implements Serializable { public class UserOperation implements Serializable {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;

@ -1,20 +1,16 @@
package com.zh.project0512.serviceImpl; package com.zh.project0512.serviceImpl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.zh.project0512.mapper.UserJurisdictionMapper; import com.zh.project0512.mapper.*;
import com.zh.project0512.mapper.UserMenusMapper; import com.zh.project0512.model.*;
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.model.dto.OperationRoleJurisdictionDTO; import com.zh.project0512.model.dto.OperationRoleJurisdictionDTO;
import com.zh.project0512.model.dto.UserJurisdictionFBIDTO; import com.zh.project0512.model.dto.UserJurisdictionFBIDTO;
import com.zh.project0512.model.vo.UserJurisdictionFBRIOperationVo; import com.zh.project0512.model.vo.UserJurisdictionFBRIOperationVo;
import com.zh.project0512.model.vo.UserJurisdictionFBRIVo; import com.zh.project0512.model.vo.UserJurisdictionFBRIVo;
import com.zh.project0512.service.IUserJurisdictionService; import com.zh.project0512.service.IUserJurisdictionService;
import com.zh.project0512.utils.BizException;
import com.zh.project0512.utils.PropertyUtils; import com.zh.project0512.utils.PropertyUtils;
import com.zh.project0512.utils.result.HttpStatusEnum;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
@ -32,6 +28,8 @@ public class UserJurisdictionServiceImpl implements IUserJurisdictionService {
UserOperationMapper userOperationMapper; UserOperationMapper userOperationMapper;
@Resource @Resource
UserJurisdictionMapper userJurisdictionMapper; UserJurisdictionMapper userJurisdictionMapper;
@Resource
UserRoleMapper userRoleMapper;
@Override @Override
@Transactional @Transactional
@ -57,6 +55,11 @@ public class UserJurisdictionServiceImpl implements IUserJurisdictionService {
@Override @Override
public List<UserJurisdictionFBRIVo> findByRoleId(UserJurisdictionFBIDTO userJurisdictionFBIDTO) { 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<>(); ArrayList<UserJurisdictionFBRIVo> userJurisdictionFBRIVos = new ArrayList<>();
//查询所有菜单 //查询所有菜单
@ -78,7 +81,7 @@ public class UserJurisdictionServiceImpl implements IUserJurisdictionService {
UserOperation userOperation = userOperationMapper.selectById(userJurisdiction.getOperationId()); UserOperation userOperation = userOperationMapper.selectById(userJurisdiction.getOperationId());
if (userOperation != null){ if (userOperation != null){
UserJurisdictionFBRIOperationVo operationVo = new UserJurisdictionFBRIOperationVo(); UserJurisdictionFBRIOperationVo operationVo = new UserJurisdictionFBRIOperationVo();
PropertyUtils.copyProperties(userJurisdiction,operationVo); PropertyUtils.copyProperties(userOperation,operationVo);
operationVo.setCheck(false);//默认为未选中 operationVo.setCheck(false);//默认为未选中
//查询该操作是否选中,如果选中则菜单也被选中 //查询该操作是否选中,如果选中则菜单也被选中
QueryWrapper<UserRoleJurisdiction> queryWrapper5 = new QueryWrapper<>(); 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.UserPointsRecordListVo;
import com.zh.project0512.model.vo.UserRoleListVo; import com.zh.project0512.model.vo.UserRoleListVo;
import com.zh.project0512.service.IUserRoleService; import com.zh.project0512.service.IUserRoleService;
import com.zh.project0512.utils.BizException;
import com.zh.project0512.utils.PropertyUtils; import com.zh.project0512.utils.PropertyUtils;
import com.zh.project0512.utils.page.PageInfo; import com.zh.project0512.utils.page.PageInfo;
import com.zh.project0512.utils.result.HttpStatusEnum;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@ -61,7 +63,7 @@ public class UserRoleServiceImpl implements IUserRoleService {
public boolean update(UserRoleUpdateDTO userRoleUpdateDTO) { public boolean update(UserRoleUpdateDTO userRoleUpdateDTO) {
UserRole userRole = userRoleMapper.selectById(userRoleUpdateDTO.getId()); UserRole userRole = userRoleMapper.selectById(userRoleUpdateDTO.getId());
if (userRole == null){ if (userRole == null){
throw new RuntimeException("记录不存在"); throw new BizException(HttpStatusEnum.CUSTOM_EXCEPTION,"记录不存在");
} }
userRole.setName(userRoleUpdateDTO.getName()); 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) { } catch (Exception e) {
throw new RuntimeException("PropertyUtils 属性转换错误"); throw new BizException(HttpStatusEnum.CUSTOM_EXCEPTION,"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) { } 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.validation.ObjectError;
import org.springframework.web.bind.MethodArgumentNotValidException; import org.springframework.web.bind.MethodArgumentNotValidException;
import org.springframework.web.bind.annotation.ExceptionHandler; import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestControllerAdvice; import org.springframework.web.bind.annotation.RestControllerAdvice;
import javax.servlet.http.HttpServletRequest;
import javax.validation.ConstraintViolation; import javax.validation.ConstraintViolation;
import javax.validation.ConstraintViolationException; import javax.validation.ConstraintViolationException;
import javax.validation.ValidationException; import javax.validation.ValidationException;
@ -58,4 +60,17 @@ public class RestExceptionHandler {
} }
return new ResponseEntity<>(result,HttpStatus.BAD_REQUEST); 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); 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