修正了错误。

This commit is contained in:
root 2025-06-20 12:59:23 +08:00
parent cd544d64c8
commit f80156459b
4 changed files with 33 additions and 23 deletions

View File

@ -2,6 +2,7 @@ package com.stdproject.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.stdproject.common.OperationLog;
import com.stdproject.config.ResponseResult;
import com.stdproject.service.IDynamicDataService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
@ -32,53 +33,62 @@ public class DynamicDataController {
@Operation(summary = "向指定数据源的表中添加数据")
@OperationLog(type = "01", module = "动态数据管理", description = "添加表数据")
@PostMapping("addTableData")
public boolean addTableData(Long datasourceId, @RequestParam("tableData") String tableData) throws Exception {
public ResponseResult addTableData(Long datasourceId, @RequestParam("tableData") String tableData) throws Exception {
boolean result = dynamicDataService.addTableData(
datasourceId,
tableData
);
return result;
if (!result) {
return ResponseResult.error();
}
return ResponseResult.success();
}
@Operation(summary = "根据主键查询表数据")
@PostMapping("getTableDataByPk")
public Map<String, Object> getTableDataByPk(Long datasourceId,@RequestParam("whereJson") String whereJson) throws Exception {
public ResponseResult getTableDataByPk(Long datasourceId,@RequestParam("whereJson") String whereJson) throws Exception {
Map<String, Object> result=dynamicDataService.getTableDataByPk(
datasourceId,
whereJson
);
return result;
return ResponseResult.successData( result);
}
@Operation(summary = "更新表数据")
@OperationLog(type = "02", module = "动态数据管理", description = "更新表数据")
@PostMapping("updateTableData")
public boolean updateTableData(Long datasourceId, @RequestParam("tableData") String tableData) throws Exception {
public ResponseResult updateTableData(Long datasourceId, @RequestParam("tableData") String tableData) throws Exception {
boolean result = dynamicDataService.updateTableData(
datasourceId,
tableData
);
return result;
if (!result) {
return ResponseResult.error();
}
return ResponseResult.success();
}
@Operation(summary = "删除表数据")
@OperationLog(type = "03", module = "动态数据管理", description = "删除表数据")
@PostMapping("deleteTableData")
public boolean deleteTableData(Long datasourceId, @RequestParam("whereJson") String whereJson) throws Exception {
public ResponseResult deleteTableData(Long datasourceId, @RequestParam("whereJson") String whereJson) throws Exception {
boolean result = dynamicDataService.deleteTableData(
datasourceId,
whereJson
);
return result;
if (!result) {
return ResponseResult.error();
}
return ResponseResult.success();
}
@Operation(summary = "分页查询表数据")
@PostMapping("queryTableDataPaged")
public Page<Map<String, Object>> queryTableDataPaged(Long datasourceId, @RequestParam("queryJson") String queryJson) throws Exception {
public ResponseResult queryTableDataPaged(Long datasourceId, @RequestParam("queryJson") String queryJson) throws Exception {
Page<Map<String, Object>> result = dynamicDataService.queryTableDataPaged(
datasourceId,
queryJson
);
return result;
return ResponseResult.successData( result);
}
}

View File

@ -10,6 +10,7 @@ import org.springframework.security.core.userdetails.UserDetails;
import java.util.Collection;
import java.util.List;
import java.util.Map;
@Data
@NoArgsConstructor
@ -18,9 +19,9 @@ public class LoginUser implements UserDetails {
private User user;
private List<Menu> permissions;
private List<Map> permissions;
public LoginUser(User user, List<Menu> permissions) {
public LoginUser(User user, List<Map> permissions) {
this.user = user;
this.permissions = permissions;
}
@ -28,7 +29,7 @@ public class LoginUser implements UserDetails {
@JSONField(serialize = false)
private List<SimpleGrantedAuthority> authorities;
public List<Menu> getPermissions() {
public List<Map> getPermissions() {
return permissions;
}

View File

@ -8,6 +8,7 @@ import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import java.util.List;
import java.util.Map;
@Mapper
public interface MenuMapper extends BaseMapper<Menu> {
@ -15,4 +16,7 @@ public interface MenuMapper extends BaseMapper<Menu> {
@Select("select m.id FROM app_role_menu rm INNER JOIN app_menu m on rm.menuid = m.id where m.isdisplay = 1 AND rm.app_id = #{appid} AND rm.roleid = #{roleid} ORDER BY m.orderno ASC")
List<String> selectMenuByRoleId( @Param("appid")String appId, @Param("roleid") String roleId);
@Select("<script>select me.id,me.type,me.code,me.name,me.parentid,me.module_id,mo.type module_type FROM app_menu me LEFT JOIN app_module mo on me.module_id = mo.id where me.id in <foreach collection='menuIds' item='id' open='(' separator=',' close=')'>#{id}</foreach> and me.isdisplay='1' order by me.code</script>")
List<Map> listMenuByIds(@Param("menuIds") List<String> menuIds);
}

View File

@ -48,7 +48,7 @@ public class CustomUserDetailsService implements UserDetailsService {
if (appUser == null) {
throw new UsernameNotFoundException("用户不存在: " + username);
}
List<Menu> permissions = buildUserAuthorities(appUser);
List<Map> permissions = buildUserAuthorities(appUser);
LoginUser loginUser = new LoginUser(appUser,permissions);
return loginUser;
@ -60,8 +60,8 @@ public class CustomUserDetailsService implements UserDetailsService {
* @param appUser 用户信息
* @return 权限集合
*/
private List<Menu> buildUserAuthorities(User appUser) {
List<Menu> permissions = new ArrayList<>();
private List<Map> buildUserAuthorities(User appUser) {
List<Map> permissions = new ArrayList<>();
try {
// 使用RoleMapper直接查询用户的角色信息
@ -80,13 +80,8 @@ public class CustomUserDetailsService implements UserDetailsService {
if (!menuIds.isEmpty()) {
// 查询菜单信息并添加菜单权限
List<Menu> menus = appMenuService.listByIds(menuIds);
for (Menu menu : menus) {
if ("1".equals(menu.getIsdisplay()) && StringUtils.hasText(menu.getCode())) {
// 添加菜单权限格式菜单编码
permissions.add(menu);
}
}
List<Map> menus = menuMapper.listMenuByIds(menuIds);
permissions.addAll(menus);
}
}
}