You've already forked FrameTour-BE
menu
This commit is contained in:
@ -20,6 +20,8 @@ import org.springframework.web.bind.annotation.RestController;
|
|||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
|
|
||||||
|
import static com.ycwl.basic.constant.JwtRoleConstant.MERCHANT;
|
||||||
|
|
||||||
@RestController
|
@RestController
|
||||||
@RequestMapping("/api/permission/v1")
|
@RequestMapping("/api/permission/v1")
|
||||||
@Api(tags = "权限管理接口")
|
@Api(tags = "权限管理接口")
|
||||||
@ -32,9 +34,9 @@ public class PermissionController {
|
|||||||
String userId = BaseContextHandler.getUserId();
|
String userId = BaseContextHandler.getUserId();
|
||||||
PermissionEntity permission = permissionService.getPermissionByUserId(Long.parseLong(userId));
|
PermissionEntity permission = permissionService.getPermissionByUserId(Long.parseLong(userId));
|
||||||
if (permission == null || StringUtils.isEmpty(permission.getPermString())) {
|
if (permission == null || StringUtils.isEmpty(permission.getPermString())) {
|
||||||
return ApiResponse.success(new PermissionResp(new ArrayList<>()));
|
return ApiResponse.success(new PermissionResp(new ArrayList<>(), new ArrayList<>()));
|
||||||
}
|
}
|
||||||
return ApiResponse.success(new PermissionResp(Arrays.asList(StringUtils.split(permission.getPermString(), ","))));
|
return ApiResponse.success(new PermissionResp(Arrays.asList(StringUtils.split(permission.getPermString(), ",")), Arrays.asList(StringUtils.split(permission.getMenuString(), ","))));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ApiOperation("根据用户ID查询权限信息")
|
@ApiOperation("根据用户ID查询权限信息")
|
||||||
@ -42,15 +44,15 @@ public class PermissionController {
|
|||||||
public ApiResponse<PermissionResp> getPermissionByUser(@PathVariable Long userId) {
|
public ApiResponse<PermissionResp> getPermissionByUser(@PathVariable Long userId) {
|
||||||
PermissionEntity permission = permissionService.getPermissionByUserId(userId);
|
PermissionEntity permission = permissionService.getPermissionByUserId(userId);
|
||||||
if (permission == null || StringUtils.isEmpty(permission.getPermString())) {
|
if (permission == null || StringUtils.isEmpty(permission.getPermString())) {
|
||||||
return ApiResponse.success(new PermissionResp(new ArrayList<>()));
|
return ApiResponse.success(new PermissionResp(new ArrayList<>(), new ArrayList<>()));
|
||||||
}
|
}
|
||||||
return ApiResponse.success(new PermissionResp(Arrays.asList(StringUtils.split(permission.getPermString(), ","))));
|
return ApiResponse.success(new PermissionResp(Arrays.asList(StringUtils.split(permission.getPermString(), ",")), Arrays.asList(StringUtils.split(permission.getMenuString(), ","))));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ApiOperation("保存或更新权限信息")
|
@ApiOperation("保存或更新权限信息")
|
||||||
@PostMapping("/save/{userId}")
|
@PostMapping("/save/{userId}")
|
||||||
public ApiResponse saveOrUpdate(@PathVariable Long userId, @RequestBody PermissionSaveReq req) {
|
public ApiResponse saveOrUpdate(@PathVariable Long userId, @RequestBody PermissionSaveReq req) {
|
||||||
permissionService.saveOrUpdate(userId, StringUtils.join(req.getPermissions(), ","));
|
permissionService.saveOrUpdate(userId, StringUtils.join(req.getPermissions(), ","), StringUtils.join(req.getMenus(), ","));
|
||||||
return ApiResponse.success(true);
|
return ApiResponse.success(true);
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -20,10 +20,12 @@ public class PermissionEntity implements Serializable {
|
|||||||
private Integer id;
|
private Integer id;
|
||||||
|
|
||||||
@TableField("user_id")
|
@TableField("user_id")
|
||||||
private Long userId; // 确保字段映射
|
private Long userId;
|
||||||
|
|
||||||
@TableField("perm_str")
|
@TableField("perm_str")
|
||||||
private String permString;
|
private String permString;
|
||||||
|
@TableField("menu_str")
|
||||||
|
private String menuString;
|
||||||
|
|
||||||
@TableField("create_time")
|
@TableField("create_time")
|
||||||
private Date createTime;
|
private Date createTime;
|
||||||
|
@ -7,4 +7,5 @@ import java.util.List;
|
|||||||
@Data
|
@Data
|
||||||
public class PermissionSaveReq {
|
public class PermissionSaveReq {
|
||||||
private List<String> permissions;
|
private List<String> permissions;
|
||||||
|
private List<String> menus;
|
||||||
}
|
}
|
@ -9,4 +9,5 @@ import java.util.List;
|
|||||||
@AllArgsConstructor
|
@AllArgsConstructor
|
||||||
public class PermissionResp {
|
public class PermissionResp {
|
||||||
private List<String> permissions;
|
private List<String> permissions;
|
||||||
|
private List<String> menus;
|
||||||
}
|
}
|
||||||
|
@ -6,5 +6,5 @@ public interface PermissionService {
|
|||||||
// 新增权限查询接口
|
// 新增权限查询接口
|
||||||
PermissionEntity getPermissionByUserId(Long userId);
|
PermissionEntity getPermissionByUserId(Long userId);
|
||||||
|
|
||||||
boolean saveOrUpdate(Long userId, String permStr);
|
boolean saveOrUpdate(Long userId, String permStr, String menuStr);
|
||||||
}
|
}
|
@ -17,10 +17,11 @@ public class PermissionServiceImpl implements PermissionService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean saveOrUpdate(Long userId, String permStr) {
|
public boolean saveOrUpdate(Long userId, String permStr, String menuStr) {
|
||||||
PermissionEntity entity = new PermissionEntity();
|
PermissionEntity entity = new PermissionEntity();
|
||||||
entity.setUserId(userId);
|
entity.setUserId(userId);
|
||||||
entity.setPermString(permStr);
|
entity.setPermString(permStr);
|
||||||
|
entity.setMenuString(menuStr);
|
||||||
if (permissionMapper.selectByUserId(userId) == null) {
|
if (permissionMapper.selectByUserId(userId) == null) {
|
||||||
permissionMapper.insertPermission(entity);
|
permissionMapper.insertPermission(entity);
|
||||||
} else {
|
} else {
|
||||||
|
@ -3,18 +3,18 @@
|
|||||||
<mapper namespace="com.ycwl.basic.mapper.PermissionMapper">
|
<mapper namespace="com.ycwl.basic.mapper.PermissionMapper">
|
||||||
<!-- 新增插入语句 -->
|
<!-- 新增插入语句 -->
|
||||||
<insert id="insertPermission">
|
<insert id="insertPermission">
|
||||||
INSERT INTO account_permission (user_id, perm_str, create_time, update_time)
|
INSERT INTO account_permission (user_id, perm_str, menu_str, create_time, update_time)
|
||||||
VALUES (#{userId}, #{permString}, NOW(), NOW())
|
VALUES (#{userId}, #{permString}, #{menuString}, NOW(), NOW())
|
||||||
</insert>
|
</insert>
|
||||||
|
|
||||||
<!-- 新增更新语句 -->
|
<!-- 新增更新语句 -->
|
||||||
<update id="updatePermission">
|
<update id="updatePermission">
|
||||||
UPDATE account_permission
|
UPDATE account_permission
|
||||||
SET perm_str = #{permString}, update_time = NOW()
|
SET perm_str = #{permString}, menu_str = #{menuString}, update_time = NOW()
|
||||||
WHERE user_id = #{userId}
|
WHERE user_id = #{userId}
|
||||||
</update>
|
</update>
|
||||||
<select id="selectByUserId" resultType="com.ycwl.basic.model.pc.permission.entity.PermissionEntity">
|
<select id="selectByUserId" resultType="com.ycwl.basic.model.pc.permission.entity.PermissionEntity">
|
||||||
SELECT id, user_id, perm_str as permString, create_time, update_time
|
SELECT id, user_id, perm_str as permString, menu_str as menuString, create_time, update_time
|
||||||
FROM account_permission
|
FROM account_permission
|
||||||
WHERE user_id = #{userId}
|
WHERE user_id = #{userId}
|
||||||
limit 1
|
limit 1
|
||||||
|
Reference in New Issue
Block a user