权限删除接口、消息删除接口
This commit is contained in:
parent
3c77c5047c
commit
032ed1de01
@ -75,7 +75,7 @@ public class InfoController {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@GetMapping("info/header-user/get")
|
@GetMapping("info/header-user/get")
|
||||||
public BaseResponse infoGetHeaderUser(@RequestParam(required = false) String order,@RequestParam(required = false) String orderBy,HttpServletRequest request){
|
public BaseResponse infoGetHeaderUser(@RequestParam String order,@RequestParam String orderBy,HttpServletRequest request){
|
||||||
log.info("请求接口[GET]: /info/header-user/get");
|
log.info("请求接口[GET]: /info/header-user/get");
|
||||||
return infoService.getHeaderUser(request,order,orderBy);
|
return infoService.getHeaderUser(request,order,orderBy);
|
||||||
}
|
}
|
||||||
|
@ -49,4 +49,12 @@ public class PermissionController {
|
|||||||
}
|
}
|
||||||
return permissionService.permissionEdit(permissionEditVo,request);
|
return permissionService.permissionEdit(permissionEditVo,request);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@DeleteMapping("/permission/delete")
|
||||||
|
public BaseResponse permissionDelete(@RequestParam Long pid,HttpServletRequest request){
|
||||||
|
// 判断是否有参数错误
|
||||||
|
if (pid == null) {
|
||||||
|
return ResultUtil.error(ErrorCode.PARAMETER_ERROR);
|
||||||
|
} else return permissionService.permissionDelete(request,pid);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -112,4 +112,15 @@ public class ProjectController {
|
|||||||
}
|
}
|
||||||
return projectService.projectAddUserForCutting(uid, pid);
|
return projectService.projectAddUserForCutting(uid, pid);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@DeleteMapping("/project/delete")
|
||||||
|
public BaseResponse projectDelete(@RequestParam Long id){
|
||||||
|
log.info("请求接口[Delete]: /project/delete");
|
||||||
|
if(id == null){
|
||||||
|
return ResultUtil.error(ErrorCode.PARAMETER_ERROR);
|
||||||
|
}
|
||||||
|
return projectService.projectDelete(id);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -11,6 +11,7 @@ import com.jsl.oa.utils.ResultUtil;
|
|||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
import org.jetbrains.annotations.Nullable;
|
||||||
import org.springframework.validation.BindingResult;
|
import org.springframework.validation.BindingResult;
|
||||||
import org.springframework.validation.annotation.Validated;
|
import org.springframework.validation.annotation.Validated;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
@ -43,7 +44,7 @@ public class RoleController {
|
|||||||
* @return {@link BaseResponse}
|
* @return {@link BaseResponse}
|
||||||
*/
|
*/
|
||||||
@GetMapping("/role/get")
|
@GetMapping("/role/get")
|
||||||
public BaseResponse roleGet(HttpServletRequest request, @RequestParam(required = false) String id) {
|
public BaseResponse roleGet(HttpServletRequest request, @RequestParam @Nullable String id) {
|
||||||
log.info("请求接口[GET]: /role/get");
|
log.info("请求接口[GET]: /role/get");
|
||||||
return roleService.roleGet(request, id);
|
return roleService.roleGet(request, id);
|
||||||
}
|
}
|
||||||
|
@ -99,4 +99,8 @@ public class ProjectDAO {
|
|||||||
}else return ResultUtil.error(ErrorCode.PROJECT_NOT_EXIST);
|
}else return ResultUtil.error(ErrorCode.PROJECT_NOT_EXIST);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public boolean projectDelete(Long id){
|
||||||
|
return projectMapper.deleteProject(id);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -2,10 +2,7 @@ package com.jsl.oa.mapper;
|
|||||||
|
|
||||||
import com.jsl.oa.model.doData.PermissionDO;
|
import com.jsl.oa.model.doData.PermissionDO;
|
||||||
import com.jsl.oa.model.doData.RolePermissionDO;
|
import com.jsl.oa.model.doData.RolePermissionDO;
|
||||||
import org.apache.ibatis.annotations.Insert;
|
import org.apache.ibatis.annotations.*;
|
||||||
import org.apache.ibatis.annotations.Mapper;
|
|
||||||
import org.apache.ibatis.annotations.Select;
|
|
||||||
import org.apache.ibatis.annotations.Update;
|
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@ -32,4 +29,7 @@ public interface PermissionMapper {
|
|||||||
@Update("UPDATE organize_oa.oa_permissions SET pid = #{pid}, name = #{name}, code = #{code}, " +
|
@Update("UPDATE organize_oa.oa_permissions SET pid = #{pid}, name = #{name}, code = #{code}, " +
|
||||||
"type = #{type} WHERE id = #{id}")
|
"type = #{type} WHERE id = #{id}")
|
||||||
boolean updatePermission(PermissionDO permissionDO);
|
boolean updatePermission(PermissionDO permissionDO);
|
||||||
|
|
||||||
|
@Delete("DELETE FROM organize_oa.oa_permissions where id=#{pid}")
|
||||||
|
boolean deletePermission(Long pid);
|
||||||
}
|
}
|
||||||
|
@ -4,10 +4,7 @@ import com.jsl.oa.model.doData.ProjectCuttingDO;
|
|||||||
import com.jsl.oa.model.doData.ProjectDO;
|
import com.jsl.oa.model.doData.ProjectDO;
|
||||||
import com.jsl.oa.model.voData.ProjectInfoVO;
|
import com.jsl.oa.model.voData.ProjectInfoVO;
|
||||||
import com.jsl.oa.utils.BaseResponse;
|
import com.jsl.oa.utils.BaseResponse;
|
||||||
import org.apache.ibatis.annotations.Insert;
|
import org.apache.ibatis.annotations.*;
|
||||||
import org.apache.ibatis.annotations.Mapper;
|
|
||||||
import org.apache.ibatis.annotations.Select;
|
|
||||||
import org.apache.ibatis.annotations.Update;
|
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@ -41,9 +38,13 @@ public interface ProjectMapper {
|
|||||||
@Update("UPDATE organize_oa.oa_config SET data = #{setProjectShow} WHERE value = 'project_show'")
|
@Update("UPDATE organize_oa.oa_config SET data = #{setProjectShow} WHERE value = 'project_show'")
|
||||||
boolean setProjectShow(String setProjectShow);
|
boolean setProjectShow(String setProjectShow);
|
||||||
|
|
||||||
@Select("select * from organize_oa.oa_project")
|
@Select("select * from organize_oa.oa_permissions")
|
||||||
List<ProjectDO> get();
|
List<ProjectDO> get();
|
||||||
|
|
||||||
@Select("select * from organize_oa.oa_project where name=#{name}")
|
@Select("select * from organize_oa.oa_project where name=#{name}")
|
||||||
ProjectDO getByName(String name);
|
BaseResponse getByName(String name);
|
||||||
|
|
||||||
|
@Delete("DELETE FROM organize_oa.oa_project where id=#{id}")
|
||||||
|
boolean deleteProject(Long id);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -1,49 +0,0 @@
|
|||||||
package com.jsl.oa.model.voData;
|
|
||||||
|
|
||||||
import lombok.Data;
|
|
||||||
|
|
||||||
import javax.validation.constraints.Max;
|
|
||||||
import javax.validation.constraints.Min;
|
|
||||||
import javax.validation.constraints.NotNull;
|
|
||||||
import javax.validation.constraints.Pattern;
|
|
||||||
|
|
||||||
|
|
||||||
@Data
|
|
||||||
public class UserEditVO {
|
|
||||||
|
|
||||||
@NotNull
|
|
||||||
private Long id;
|
|
||||||
|
|
||||||
@NotNull
|
|
||||||
private String username;
|
|
||||||
|
|
||||||
private String address;
|
|
||||||
|
|
||||||
@Pattern(regexp = "^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\\d{8}$", message = "电话格式错误")
|
|
||||||
private String phone;
|
|
||||||
|
|
||||||
@Pattern(regexp = "^\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*$", message = "邮箱格式错误")
|
|
||||||
private String email;
|
|
||||||
|
|
||||||
@Min(value = 0, message = "保密:0,男:1,女:2")
|
|
||||||
@Max(value = 2, message = "保密:0,男:1,女:2")
|
|
||||||
private Short sex;
|
|
||||||
|
|
||||||
private Short age;
|
|
||||||
private String signature;
|
|
||||||
private String avatar;
|
|
||||||
private String nickname;
|
|
||||||
private String description;
|
|
||||||
@NotNull
|
|
||||||
private Boolean enabled;
|
|
||||||
@NotNull
|
|
||||||
private Boolean isExpired;
|
|
||||||
@NotNull
|
|
||||||
private Boolean passwordExpired;
|
|
||||||
@NotNull
|
|
||||||
private Boolean recommend;
|
|
||||||
@NotNull
|
|
||||||
private Boolean isLocked;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
@ -14,4 +14,6 @@ public interface PermissionService {
|
|||||||
BaseResponse permissionGet(HttpServletRequest request);
|
BaseResponse permissionGet(HttpServletRequest request);
|
||||||
|
|
||||||
BaseResponse permissionEdit(PermissionEditVo permissionEditVo, HttpServletRequest request);
|
BaseResponse permissionEdit(PermissionEditVo permissionEditVo, HttpServletRequest request);
|
||||||
|
|
||||||
|
BaseResponse permissionDelete(HttpServletRequest request, Long pid);
|
||||||
}
|
}
|
||||||
|
@ -27,4 +27,6 @@ public interface ProjectService {
|
|||||||
BaseResponse get();
|
BaseResponse get();
|
||||||
|
|
||||||
BaseResponse getByName(String name);
|
BaseResponse getByName(String name);
|
||||||
|
|
||||||
|
BaseResponse projectDelete(Long id);
|
||||||
}
|
}
|
||||||
|
@ -84,5 +84,19 @@ public class PermissionServiceImpl implements PermissionService {
|
|||||||
return ResultUtil.success();
|
return ResultUtil.success();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public BaseResponse permissionDelete(HttpServletRequest request, Long pid) {
|
||||||
|
//检验用户权限是否为管理员
|
||||||
|
if(!Processing.checkUserIsAdmin(request,roleMapper)){
|
||||||
|
return ResultUtil.error(ErrorCode.NOT_ADMIN);
|
||||||
|
}
|
||||||
|
//删除权限
|
||||||
|
if(!permissionMapper.deletePermission(pid)){
|
||||||
|
return ResultUtil.error(ErrorCode.DATABASE_DELETE_ERROR);
|
||||||
|
}
|
||||||
|
|
||||||
|
return ResultUtil.success();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -172,5 +172,13 @@ public class ProjectServiceImpl implements ProjectService {
|
|||||||
return projectDAO.getByName(name);
|
return projectDAO.getByName(name);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public BaseResponse projectDelete(Long id) {
|
||||||
|
if(!projectDAO.projectDelete(id)){
|
||||||
|
return ResultUtil.error(ErrorCode.DATABASE_DELETE_ERROR);
|
||||||
|
}
|
||||||
|
return ResultUtil.success();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -2,13 +2,11 @@ package com.jsl.oa.services.impl;
|
|||||||
|
|
||||||
import com.jsl.oa.dao.UserDAO;
|
import com.jsl.oa.dao.UserDAO;
|
||||||
import com.jsl.oa.mapper.RoleMapper;
|
import com.jsl.oa.mapper.RoleMapper;
|
||||||
|
import com.jsl.oa.model.doData.RoleUserDO;
|
||||||
import com.jsl.oa.model.doData.UserDO;
|
import com.jsl.oa.model.doData.UserDO;
|
||||||
import com.jsl.oa.model.voData.*;
|
import com.jsl.oa.model.voData.*;
|
||||||
import com.jsl.oa.services.UserService;
|
import com.jsl.oa.services.UserService;
|
||||||
import com.jsl.oa.utils.BaseResponse;
|
import com.jsl.oa.utils.*;
|
||||||
import com.jsl.oa.utils.ErrorCode;
|
|
||||||
import com.jsl.oa.utils.Processing;
|
|
||||||
import com.jsl.oa.utils.ResultUtil;
|
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
@ -215,4 +213,29 @@ public class UserServiceImpl implements UserService {
|
|||||||
userProfileVo.setSex(Processing.getSex(userDO.getSex()));
|
userProfileVo.setSex(Processing.getSex(userDO.getSex()));
|
||||||
return ResultUtil.success(userProfileVo);
|
return ResultUtil.success(userProfileVo);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Description: 判断用户是否为管理员
|
||||||
|
* @Date: 2024/1/18
|
||||||
|
* @Param request: 请求头
|
||||||
|
**/
|
||||||
|
public BaseResponse isManager(HttpServletRequest request) {
|
||||||
|
//获取token
|
||||||
|
String originalAuthorization = request.getHeader("Authorization");
|
||||||
|
String token = originalAuthorization.replace("Bearer ", "");
|
||||||
|
//获取操作用户的权限
|
||||||
|
RoleUserDO roleUserDO = userDAO.getRoleFromUser(JwtUtil.getUserId(token));
|
||||||
|
//用户权限不为空
|
||||||
|
if (roleUserDO == null) {
|
||||||
|
return ResultUtil.error(ErrorCode.USER_ROLE_NOT_EXIST);
|
||||||
|
}
|
||||||
|
//用户权限应为管理员
|
||||||
|
if (!userDAO.isManagerByRoleId(roleUserDO.getRid())) {
|
||||||
|
return ResultUtil.error(ErrorCode.USER_ROLE_NOT_MANAGER);
|
||||||
|
}
|
||||||
|
return ResultUtil.success();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -29,6 +29,7 @@ public enum ErrorCode {
|
|||||||
ID_NOT_EXIST("IdNotExist", 40400, "ID不存在"),
|
ID_NOT_EXIST("IdNotExist", 40400, "ID不存在"),
|
||||||
ROLE_NOT_FOUNDED("RoleNotFounded", 40401, "角色不存在"),
|
ROLE_NOT_FOUNDED("RoleNotFounded", 40401, "角色不存在"),
|
||||||
ROLE_NAME_REPEAT("RoleNameRepeat", 40402, "角色名称重复"),
|
ROLE_NAME_REPEAT("RoleNameRepeat", 40402, "角色名称重复"),
|
||||||
|
MESSAGE_ONLY_DELETE_BY_THEMSELVES("MessageOnlyDeleteByThenSelves",40500 ,"用户只能删除自己的消息" ),
|
||||||
PERMISSION_NOT_EXIST("permissionNotExist",40501,"权限不存在"),
|
PERMISSION_NOT_EXIST("permissionNotExist",40501,"权限不存在"),
|
||||||
DATABASE_INSERT_ERROR("DatabaseInsertError", 50010, "数据库插入错误"),
|
DATABASE_INSERT_ERROR("DatabaseInsertError", 50010, "数据库插入错误"),
|
||||||
DATABASE_UPDATE_ERROR("DatabaseUpdateError", 50011, "数据库更新错误"),
|
DATABASE_UPDATE_ERROR("DatabaseUpdateError", 50011, "数据库更新错误"),
|
||||||
|
Loading…
x
Reference in New Issue
Block a user