2024-07-26 11:35:17 +08:00
|
|
|
package com.engine.salary.web;
|
|
|
|
|
|
|
|
|
|
import com.engine.common.util.ServiceUtil;
|
2024-07-30 17:45:02 +08:00
|
|
|
import com.engine.salary.entity.auth.dto.AuthDataDTO;
|
2024-07-29 13:28:46 +08:00
|
|
|
import com.engine.salary.entity.auth.dto.AuthMemberDTO;
|
2024-07-29 16:00:27 +08:00
|
|
|
import com.engine.salary.entity.auth.dto.AuthOptDTO;
|
2024-09-02 10:22:42 +08:00
|
|
|
import com.engine.salary.entity.auth.dto.AuthRoleDTO;
|
2024-07-30 17:45:02 +08:00
|
|
|
import com.engine.salary.entity.auth.param.*;
|
2024-08-30 10:49:46 +08:00
|
|
|
import com.engine.salary.entity.auth.vo.Permission;
|
2024-07-26 11:35:17 +08:00
|
|
|
import com.engine.salary.util.ResponseResult;
|
2024-07-29 13:28:46 +08:00
|
|
|
import com.engine.salary.util.page.PageInfo;
|
2024-07-26 11:35:17 +08:00
|
|
|
import com.engine.salary.wrapper.AuthWrapper;
|
|
|
|
|
import io.swagger.v3.oas.annotations.parameters.RequestBody;
|
|
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
|
|
import weaver.hrm.HrmUserVarify;
|
|
|
|
|
import weaver.hrm.User;
|
|
|
|
|
|
|
|
|
|
import javax.servlet.http.HttpServletRequest;
|
|
|
|
|
import javax.servlet.http.HttpServletResponse;
|
2024-07-29 16:00:27 +08:00
|
|
|
import javax.ws.rs.*;
|
2024-07-26 11:35:17 +08:00
|
|
|
import javax.ws.rs.core.Context;
|
|
|
|
|
import javax.ws.rs.core.MediaType;
|
2024-08-06 10:46:33 +08:00
|
|
|
import java.util.List;
|
2024-07-26 11:35:17 +08:00
|
|
|
|
|
|
|
|
/**
|
2024-08-20 11:40:12 +08:00
|
|
|
* 权限
|
2024-07-26 11:35:17 +08:00
|
|
|
* <p>Copyright: Copyright (c) 2022</p>
|
|
|
|
|
* <p>Company: 泛微软件</p>
|
|
|
|
|
*
|
|
|
|
|
* @author qiantao
|
|
|
|
|
* @version 1.0
|
|
|
|
|
**/
|
|
|
|
|
@Slf4j
|
|
|
|
|
public class AuthController {
|
|
|
|
|
|
|
|
|
|
private AuthWrapper getAuthWrapper(User user) {
|
|
|
|
|
return ServiceUtil.getService(AuthWrapper.class, user);
|
|
|
|
|
}
|
|
|
|
|
|
2024-09-02 10:22:42 +08:00
|
|
|
@POST
|
|
|
|
|
@Path("/role/list")
|
|
|
|
|
@Produces(MediaType.APPLICATION_JSON)
|
|
|
|
|
public String roleList(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody AuthRoleListQueryParam param) {
|
|
|
|
|
User user = HrmUserVarify.getUser(request, response);
|
|
|
|
|
return new ResponseResult<AuthRoleListQueryParam, PageInfo<AuthRoleDTO>>(user).run(getAuthWrapper(user)::roleList, param);
|
|
|
|
|
}
|
|
|
|
|
|
2024-07-26 11:35:17 +08:00
|
|
|
@POST
|
|
|
|
|
@Path("/role/save")
|
|
|
|
|
@Produces(MediaType.APPLICATION_JSON)
|
|
|
|
|
public String saveRole(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody AuthRoleSaveParam param) {
|
|
|
|
|
User user = HrmUserVarify.getUser(request, response);
|
|
|
|
|
return new ResponseResult<AuthRoleSaveParam, Long>(user).run(getAuthWrapper(user)::saveRole, param);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@POST
|
|
|
|
|
@Path("/role/delete")
|
|
|
|
|
@Produces(MediaType.APPLICATION_JSON)
|
2024-08-06 10:46:33 +08:00
|
|
|
public String deleteRole(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody List<Long> ids) {
|
2024-07-26 11:35:17 +08:00
|
|
|
User user = HrmUserVarify.getUser(request, response);
|
2024-08-06 10:46:33 +08:00
|
|
|
return new ResponseResult<List<Long>, Long>(user).run(getAuthWrapper(user)::deleteRole, ids);
|
2024-07-26 11:35:17 +08:00
|
|
|
}
|
|
|
|
|
|
2024-07-29 13:28:46 +08:00
|
|
|
@POST
|
|
|
|
|
@Path("/member/list")
|
|
|
|
|
@Produces(MediaType.APPLICATION_JSON)
|
|
|
|
|
public String memberList(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody AuthMemberQueryParam param) {
|
|
|
|
|
User user = HrmUserVarify.getUser(request, response);
|
|
|
|
|
return new ResponseResult<AuthMemberQueryParam, PageInfo<AuthMemberDTO>>(user).run(getAuthWrapper(user)::memberList, param);
|
|
|
|
|
}
|
|
|
|
|
|
2024-07-26 11:35:17 +08:00
|
|
|
@POST
|
|
|
|
|
@Path("/member/save")
|
|
|
|
|
@Produces(MediaType.APPLICATION_JSON)
|
2024-08-08 10:01:41 +08:00
|
|
|
public String saveMember(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody List<AuthMemberSaveParam> param) {
|
2024-07-26 11:35:17 +08:00
|
|
|
User user = HrmUserVarify.getUser(request, response);
|
2024-08-08 10:01:41 +08:00
|
|
|
return new ResponseResult<List<AuthMemberSaveParam>, Long>(user).run(getAuthWrapper(user)::saveMember, param);
|
2024-07-26 11:35:17 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@POST
|
|
|
|
|
@Path("/member/delete")
|
|
|
|
|
@Produces(MediaType.APPLICATION_JSON)
|
2024-08-06 10:46:33 +08:00
|
|
|
public String deleteMember(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody List<Long> ids) {
|
2024-07-26 11:35:17 +08:00
|
|
|
User user = HrmUserVarify.getUser(request, response);
|
2024-08-06 10:46:33 +08:00
|
|
|
return new ResponseResult<List<Long>, Long>(user).run(getAuthWrapper(user)::deleteMember, ids);
|
2024-07-26 11:35:17 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@POST
|
|
|
|
|
@Path("/member/sync")
|
|
|
|
|
@Produces(MediaType.APPLICATION_JSON)
|
2024-08-06 10:46:33 +08:00
|
|
|
public String syncMember(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody AuthSyncParam param) {
|
2024-07-26 11:35:17 +08:00
|
|
|
User user = HrmUserVarify.getUser(request, response);
|
2024-08-06 10:46:33 +08:00
|
|
|
return new ResponseResult<AuthSyncParam, Long>(user).run(getAuthWrapper(user)::syncMember, param);
|
2024-07-26 11:35:17 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
2024-07-29 16:00:27 +08:00
|
|
|
@GET
|
|
|
|
|
@Path("/opt/tree")
|
|
|
|
|
@Produces(MediaType.APPLICATION_JSON)
|
|
|
|
|
public String optTree(@Context HttpServletRequest request, @Context HttpServletResponse response, @QueryParam(value = "roleId") Long roleId) {
|
|
|
|
|
User user = HrmUserVarify.getUser(request, response);
|
|
|
|
|
return new ResponseResult<Long, AuthOptDTO>(user).run(getAuthWrapper(user)::optTree, roleId);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@POST
|
|
|
|
|
@Path("/opt/save")
|
|
|
|
|
@Produces(MediaType.APPLICATION_JSON)
|
|
|
|
|
public String saveOpt(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody AuthOptSaveParam opt) {
|
|
|
|
|
User user = HrmUserVarify.getUser(request, response);
|
|
|
|
|
return new ResponseResult<AuthOptSaveParam, AuthOptDTO>(user).run(getAuthWrapper(user)::saveOpt, opt);
|
|
|
|
|
}
|
2024-07-29 13:28:46 +08:00
|
|
|
|
2024-07-30 17:45:02 +08:00
|
|
|
@POST
|
|
|
|
|
@Path("/data/list")
|
|
|
|
|
@Produces(MediaType.APPLICATION_JSON)
|
|
|
|
|
public String memberList(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody AuthDataQueryParam param) {
|
|
|
|
|
User user = HrmUserVarify.getUser(request, response);
|
|
|
|
|
return new ResponseResult<AuthDataQueryParam, PageInfo<AuthDataDTO>>(user).run(getAuthWrapper(user)::dataList, param);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@POST
|
|
|
|
|
@Path("/data/save")
|
|
|
|
|
@Produces(MediaType.APPLICATION_JSON)
|
2024-08-08 10:01:41 +08:00
|
|
|
public String saveData(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody List<AuthDataSaveParam> params) {
|
2024-07-30 17:45:02 +08:00
|
|
|
User user = HrmUserVarify.getUser(request, response);
|
2024-08-08 10:01:41 +08:00
|
|
|
return new ResponseResult<List<AuthDataSaveParam>, Long>(user).run(getAuthWrapper(user)::saveData, params);
|
2024-07-30 17:45:02 +08:00
|
|
|
}
|
|
|
|
|
|
2024-08-19 15:29:45 +08:00
|
|
|
@POST
|
|
|
|
|
@Path("/data/delete")
|
|
|
|
|
@Produces(MediaType.APPLICATION_JSON)
|
|
|
|
|
public String deleteData(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody List<Long> ids) {
|
|
|
|
|
User user = HrmUserVarify.getUser(request, response);
|
2024-08-30 10:49:46 +08:00
|
|
|
return new ResponseResult<List<Long>, Long>(user).run(getAuthWrapper(user)::deleteData, ids);
|
2024-08-19 15:29:45 +08:00
|
|
|
}
|
|
|
|
|
|
2024-07-30 17:45:02 +08:00
|
|
|
@POST
|
|
|
|
|
@Path("/data/sync")
|
|
|
|
|
@Produces(MediaType.APPLICATION_JSON)
|
2024-08-06 10:46:33 +08:00
|
|
|
public String syncData(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody AuthSyncParam param) {
|
2024-07-30 17:45:02 +08:00
|
|
|
User user = HrmUserVarify.getUser(request, response);
|
2024-08-06 10:46:33 +08:00
|
|
|
return new ResponseResult<AuthSyncParam, AuthOptDTO>(user).run(getAuthWrapper(user)::syncData, param);
|
2024-07-30 17:45:02 +08:00
|
|
|
}
|
|
|
|
|
|
2024-08-01 16:19:23 +08:00
|
|
|
@GET
|
2024-08-01 10:56:29 +08:00
|
|
|
@Path("/data/auth")
|
|
|
|
|
@Produces(MediaType.APPLICATION_JSON)
|
2024-08-30 10:49:46 +08:00
|
|
|
public String auth(@Context HttpServletRequest request, @Context HttpServletResponse response, @QueryParam(value = "page") String page) {
|
2024-08-01 10:56:29 +08:00
|
|
|
User user = HrmUserVarify.getUser(request, response);
|
2024-08-30 10:49:46 +08:00
|
|
|
return new ResponseResult<String, Object>(user).run(getAuthWrapper(user)::auth, page);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 权限信息
|
|
|
|
|
*
|
|
|
|
|
* @param request
|
|
|
|
|
* @param response
|
|
|
|
|
* @return
|
|
|
|
|
*/
|
|
|
|
|
@GET
|
|
|
|
|
@Path("/permission")
|
|
|
|
|
@Produces(MediaType.APPLICATION_JSON)
|
|
|
|
|
public String permission(@Context HttpServletRequest request, @Context HttpServletResponse response, @QueryParam(value = "page") String page) {
|
|
|
|
|
User user = HrmUserVarify.getUser(request, response);
|
|
|
|
|
return new ResponseResult<String, Permission>(user).run(getAuthWrapper(user)::permission, page);
|
2024-08-01 10:56:29 +08:00
|
|
|
}
|
|
|
|
|
|
2024-07-29 13:28:46 +08:00
|
|
|
|
2024-07-26 11:35:17 +08:00
|
|
|
}
|