Commit c75f9c7c by zhangxingmin

用户服务相关接口

parent b92ba7fb
package com.yd.user.api.controller; package com.yd.user.api.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yd.common.result.Result;
import com.yd.user.api.service.ApiRelProjectRoleService;
import com.yd.user.feign.client.relprojectrole.ApiRelProjectRoleFeignClient;
import com.yd.user.feign.request.relprojectrole.ApiRelProjectRoleListAddRequest;
import com.yd.user.feign.request.relprojectrole.ApiRelProjectRoleListPageRequest;
import com.yd.user.feign.request.relprojectrole.ApiRelProjectRoleSelectPageRequest;
import com.yd.user.feign.response.relprojectrole.ApiRelProjectRoleListPageResponse;
import com.yd.user.feign.response.relprojectrole.ApiRelProjectRoleSelectPageResponse;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import javax.validation.constraints.NotNull;
/** /**
* <p> * 项目-角色关系信息(项目管理-角色配置)
* 项目-角色关系表(正常来说一对多,加关系表方便扩展) 前端控制器
* </p>
* *
* @author zxm * @author zxm
* @since 2025-07-31 * @since 2025-07-31
*/ */
@RestController @RestController
@RequestMapping("/relProjectRole") @RequestMapping("/relProjectRole")
public class RelProjectRoleController { @Validated
public class ApiRelProjectRoleController implements ApiRelProjectRoleFeignClient {
@Autowired
private ApiRelProjectRoleService apiRelProjectRoleService;
/**
* 项目和角色关系分页查询
* @param request
* @return
*/
@Override
public Result<IPage<ApiRelProjectRoleListPageResponse>> page(ApiRelProjectRoleListPageRequest request) {
return apiRelProjectRoleService.page(request);
}
/**
* 添加项目和角色列表关系
* @param request
* @return
*/
@Override
public Result addRoleList(ApiRelProjectRoleListAddRequest request) {
return apiRelProjectRoleService.addRoleList(request);
}
/**
* 删除项目和角色关系
* @param id 项目和角色关系表主键id
* @return
*/
@Override
public Result del(Long id) {
return apiRelProjectRoleService.del(id);
}
/**
* 导入-选择角色分页查询(查询当前项目级(当前所属项目绑定的角色)或者系统级(全局角色在任何地方都适用导入绑定)的角色表数据)
* @param request
* @return
*/
@Override
public Result<IPage<ApiRelProjectRoleSelectPageResponse>> selectRolePage(ApiRelProjectRoleSelectPageRequest request) {
return apiRelProjectRoleService.selectRolePage(request);
}
} }
package com.yd.user.api.controller; package com.yd.user.api.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yd.common.result.Result;
import com.yd.user.api.service.ApiRelProjectUserService;
import com.yd.user.feign.client.relprojectuser.ApiRelProjectUserFeignClient;
import com.yd.user.feign.request.relprojectuser.ApiRelProjectUserListAddRequest;
import com.yd.user.feign.request.relprojectuser.ApiRelProjectUserListPageRequest;
import com.yd.user.feign.request.relprojectuser.ApiRelProjectUserSelectPageRequest;
import com.yd.user.feign.response.relprojectuser.ApiRelProjectUserListPageResponse;
import com.yd.user.feign.response.relprojectuser.ApiRelProjectUserSelectPageResponse;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
/** /**
* <p> * 项目-用户关系信息(项目管理-用户配置)
* 项目-用户关系表(多对多关系) 前端控制器
* </p>
* *
* @author zxm * @author zxm
* @since 2025-07-31 * @since 2025-07-31
*/ */
@RestController @RestController
@RequestMapping("/relProjectUser") @RequestMapping("/relProjectUser")
public class RelProjectUserController { @Validated
public class ApiRelProjectUserController implements ApiRelProjectUserFeignClient {
@Autowired
private ApiRelProjectUserService apiRelProjectUserService;
/**
* 项目和用户关系分页查询
* @param request
* @return
*/
@Override
public Result<IPage<ApiRelProjectUserListPageResponse>> page(ApiRelProjectUserListPageRequest request) {
return apiRelProjectUserService.page(request);
}
/**
* 添加项目和用户列表关系
* @param request
* @return
*/
@Override
public Result addUserList(ApiRelProjectUserListAddRequest request) {
return apiRelProjectUserService.addUserList(request);
}
/**
* 删除项目和用户关系
* @param id 项目和用户关系表主键id
* @return
*/
@Override
public Result del(Long id) {
return apiRelProjectUserService.del(id);
}
/**
* 导入-选择用户分页查询(查询用户库的用户id不在当前项目用户关系的用户id列表中的数据)
* @param request
* @return
*/
@Override
public Result<IPage<ApiRelProjectUserSelectPageResponse>> selectUserPage(ApiRelProjectUserSelectPageRequest request) {
return apiRelProjectUserService.selectUserPage(request);
}
} }
package com.yd.user.api.controller; package com.yd.user.api.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yd.common.result.Result;
import com.yd.user.api.service.ApiRelTenantMenuService;
import com.yd.user.feign.client.reltenantmenu.ApiRelTenantMenuFeignClient;
import com.yd.user.feign.request.reltenantmenu.ApiRelTenantMenuListAddRequest;
import com.yd.user.feign.request.reltenantmenu.ApiRelTenantMenuListPageRequest;
import com.yd.user.feign.request.reltenantmenu.ApiRelTenantMenuSelectPageRequest;
import com.yd.user.feign.response.reltenantmenu.ApiRelTenantMenuListPageResponse;
import com.yd.user.feign.response.reltenantmenu.ApiRelTenantMenuSelectPageResponse;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import javax.validation.constraints.NotNull;
/** /**
* <p> * 租户-菜单关系信息(租户管理-菜单配置)
* 租户-菜单关系表(正常来说一对多,加关系表方便扩展) 前端控制器
* </p>
* *
* @author zxm * @author zxm
* @since 2025-07-31 * @since 2025-07-31
*/ */
@RestController @RestController
@RequestMapping("/relTenantMenu") @RequestMapping("/relTenantMenu")
public class RelTenantMenuController { @Validated
public class ApiRelTenantMenuController implements ApiRelTenantMenuFeignClient {
@Autowired
private ApiRelTenantMenuService apiRelTenantMenuService;
/**
* 租户和菜单关系分页查询
* @param request
* @return
*/
@Override
public Result<IPage<ApiRelTenantMenuListPageResponse>> page(ApiRelTenantMenuListPageRequest request) {
return apiRelTenantMenuService.page(request);
}
/**
* 添加租户和菜单列表关系
* @param request
* @return
*/
@Override
public Result addMenuList(ApiRelTenantMenuListAddRequest request) {
return apiRelTenantMenuService.addMenuList(request);
}
/**
* 删除租户和菜单关系
* @param id 租户和菜单关系表主键id
* @return
*/
@Override
public Result del(Long id) {
return apiRelTenantMenuService.del(id);
}
/**
* 导入-选择菜单分页查询(查询当前租户级(当前所属租户绑定的菜单)或者系统级(全局菜单在任何地方都适用导入绑定)的菜单表数据)
* @param request
* @return
*/
@Override
public Result<IPage<ApiRelTenantMenuSelectPageResponse>> selectMenuPage(ApiRelTenantMenuSelectPageRequest request) {
return apiRelTenantMenuService.selectMenuPage(request);
}
} }
package com.yd.user.api.controller; package com.yd.user.api.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yd.common.result.Result;
import com.yd.user.api.service.ApiRelTenantProjectService;
import com.yd.user.feign.client.reltenantproject.ApiRelTenantProjectFeignClient;
import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectListAddRequest;
import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectListPageRequest;
import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectSelectPageRequest;
import com.yd.user.feign.response.reltenantproject.ApiRelTenantProjectListPageResponse;
import com.yd.user.feign.response.reltenantproject.ApiRelTenantProjectSelectPageResponse;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
/** /**
* <p> * 租户-项目关系信息(租户管理-项目配置)
* 租户-项目关系表(正常来说一对多,加关系表方便扩展) 前端控制器
* </p>
* *
* @author zxm * @author zxm
* @since 2025-07-31 * @since 2025-07-31
*/ */
@RestController @RestController
@RequestMapping("/relTenantProject") @RequestMapping("/relTenantProject")
public class ApiRelTenantProjectController { @Validated
public class ApiRelTenantProjectController implements ApiRelTenantProjectFeignClient {
@Autowired
private ApiRelTenantProjectService apiRelTenantProjectService;
/**
* 租户和项目关系分页查询
* @param request
* @return
*/
@Override
public Result<IPage<ApiRelTenantProjectListPageResponse>> page(ApiRelTenantProjectListPageRequest request) {
return apiRelTenantProjectService.page(request);
}
/**
* 添加租户和项目列表关系
* @param request
* @return
*/
@Override
public Result addProjectList(ApiRelTenantProjectListAddRequest request) {
return apiRelTenantProjectService.addProjectList(request);
}
/**
* 删除租户和项目关系
* @param id 租户和项目关系表主键id
* @return
*/
@Override
public Result del(Long id) {
return apiRelTenantProjectService.del(id);
}
/**
* 导入-选择项目分页查询(查询当前租户级(当前所属租户绑定的项目)或者系统级(全局项目在任何地方都适用导入绑定)的项目表数据)
* @param request
* @return
*/
@Override
public Result<IPage<ApiRelTenantProjectSelectPageResponse>> selectProjectPage(ApiRelTenantProjectSelectPageRequest request) {
return apiRelTenantProjectService.selectProjectPage(request);
}
} }
package com.yd.user.api.controller; package com.yd.user.api.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yd.common.result.Result;
import com.yd.user.api.service.ApiRelTenantRoleService;
import com.yd.user.feign.client.reltenantrole.ApiRelTenantRoleFeignClient;
import com.yd.user.feign.request.reltenantrole.ApiRelTenantRoleListAddRequest;
import com.yd.user.feign.request.reltenantrole.ApiRelTenantRoleListPageRequest;
import com.yd.user.feign.request.reltenantrole.ApiRelTenantRoleSelectPageRequest;
import com.yd.user.feign.response.reltenantrole.ApiRelTenantRoleListPageResponse;
import com.yd.user.feign.response.reltenantrole.ApiRelTenantRoleSelectPageResponse;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
/** /**
* <p> * 租户-角色关系信息(租户管理-角色配置)
* 租户-角色关系表(正常来说一对多,加关系表方便扩展) 前端控制器
* </p>
* *
* @author zxm * @author zxm
* @since 2025-07-31 * @since 2025-07-31
*/ */
@RestController @RestController
@RequestMapping("/relTenantRole") @RequestMapping("/relTenantRole")
public class RelTenantRoleController { @Validated
public class ApiRelTenantRoleController implements ApiRelTenantRoleFeignClient {
@Autowired
private ApiRelTenantRoleService apiRelTenantRoleService;
/**
* 租户和角色关系分页查询
* @param request
* @return
*/
@Override
public Result<IPage<ApiRelTenantRoleListPageResponse>> page(ApiRelTenantRoleListPageRequest request) {
return apiRelTenantRoleService.page(request);
}
/**
* 添加租户和角色列表关系
* @param request
* @return
*/
@Override
public Result addRoleList(ApiRelTenantRoleListAddRequest request) {
return apiRelTenantRoleService.addRoleList(request);
}
/**
* 删除租户和角色关系
* @param id 租户和角色关系表主键id
* @return
*/
@Override
public Result del(Long id) {
return apiRelTenantRoleService.del(id);
}
/**
* 导入-选择角色分页查询(查询当前租户级(当前所属租户绑定的角色)或者系统级(全局角色在任何地方都适用导入绑定)的角色表数据)
* @param request
* @return
*/
@Override
public Result<IPage<ApiRelTenantRoleSelectPageResponse>> selectRolePage(ApiRelTenantRoleSelectPageRequest request) {
return apiRelTenantRoleService.selectRolePage(request);
}
} }
package com.yd.user.api.controller; package com.yd.user.api.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yd.common.result.Result;
import com.yd.user.api.service.ApiRelTenantUserService;
import com.yd.user.feign.client.reltenantuser.ApiRelTenantUserFeignClient;
import com.yd.user.feign.request.reltenantuser.ApiRelTenantUserListAddRequest;
import com.yd.user.feign.request.reltenantuser.ApiRelTenantUserListPageRequest;
import com.yd.user.feign.request.reltenantuser.ApiRelTenantUserSelectPageRequest;
import com.yd.user.feign.response.reltenantuser.ApiRelTenantUserListPageResponse;
import com.yd.user.feign.response.reltenantuser.ApiRelTenantUserSelectPageResponse;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import javax.validation.constraints.NotNull;
/** /**
* <p> * 租户-用户关系信息(租户管理-用户配置)
* 租户-用户关系表(多对多关系) 前端控制器
* </p>
* *
* @author zxm * @author zxm
* @since 2025-07-31 * @since 2025-07-31
*/ */
@RestController @RestController
@RequestMapping("/relTenantUser") @RequestMapping("/relTenantUser")
public class RelTenantUserController { @Validated
public class ApiRelTenantUserController implements ApiRelTenantUserFeignClient {
@Autowired
private ApiRelTenantUserService apiRelTenantUserService;
/**
* 租户和用户关系分页查询
* @param request
* @return
*/
@Override
public Result<IPage<ApiRelTenantUserListPageResponse>> page(ApiRelTenantUserListPageRequest request) {
return apiRelTenantUserService.page(request);
}
/**
* 添加租户和用户列表关系
* @param request
* @return
*/
@Override
public Result addUserList(ApiRelTenantUserListAddRequest request) {
return apiRelTenantUserService.addUserList(request);
}
/**
* 删除租户和用户关系
* @param id 租户和用户关系表主键id
* @return
*/
@Override
public Result del(Long id) {
return apiRelTenantUserService.del(id);
}
/**
* 导入-选择用户分页查询(查询用户库的用户id不在当前租户用户关系的用户id列表中的数据)
* @param request
* @return
*/
@Override
public Result<IPage<ApiRelTenantUserSelectPageResponse>> selectUserPage(ApiRelTenantUserSelectPageRequest request) {
return apiRelTenantUserService.selectUserPage(request);
}
} }
package com.yd.user.api.controller; package com.yd.user.api.controller;
import com.yd.common.result.Result;
import com.yd.user.api.service.ApiRelUserRoleService;
import com.yd.user.feign.client.reluserrole.ApiRelUserRoleFeignClient;
import com.yd.user.feign.request.reluserrole.ApiProjectUserRoleListAddRequest;
import com.yd.user.feign.request.reluserrole.ApiTenantUserRoleListAddRequest;
import com.yd.user.feign.response.reluserrole.ApiSelectedProjectUserRoleListResponse;
import com.yd.user.feign.response.reluserrole.ApiSelectedTenantUserRoleListResponse;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import javax.validation.constraints.NotBlank;
import java.util.List;
/** /**
* 用户-角色关系信息 * 用户-角色关系信息
* *
...@@ -13,7 +24,46 @@ import org.springframework.web.bind.annotation.RestController; ...@@ -13,7 +24,46 @@ import org.springframework.web.bind.annotation.RestController;
@RestController @RestController
@RequestMapping("/relUserRole") @RequestMapping("/relUserRole")
@Validated @Validated
public class RelUserRoleController { public class ApiRelUserRoleController implements ApiRelUserRoleFeignClient {
@Autowired
private ApiRelUserRoleService apiRelUserRoleService;
/**
* 租户管理-用户配置-权限配置-添加用户角色列表关系
* @param request
* @return
*/
@Override
public Result addTenantUserRoleList(ApiTenantUserRoleListAddRequest request) {
return apiRelUserRoleService.addTenantUserRoleList(request);
}
/**
* 租户管理-用户配置-权限配置-查询选中的角色列表
* @return
*/
@Override
public Result<List<ApiSelectedTenantUserRoleListResponse>> selectedTenantUserRoleList(String tenantBizId, String userBizId) {
return apiRelUserRoleService.selectedTenantUserRoleList(tenantBizId,userBizId);
}
/**
* 项目管理-用户配置-权限配置-添加用户角色列表关系
* @param request
* @return
*/
@Override
public Result addProjectUserRoleList(ApiProjectUserRoleListAddRequest request) {
return apiRelUserRoleService.addProjectUserRoleList(request);
}
/**
* 项目管理-用户配置-权限配置-查询选中的角色列表
* @return
*/
@Override
public Result<List<ApiSelectedProjectUserRoleListResponse>> selectedProjectUserRoleList(String projectBizId, String userBizId) {
return apiRelUserRoleService.selectedProjectUserRoleList(projectBizId,userBizId);
}
} }
package com.yd.user.api.controller; package com.yd.user.api.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yd.common.result.Result;
import com.yd.user.api.service.ApiSysMenuService;
import com.yd.user.feign.client.sysmenu.ApiSysMenuFeignClient;
import com.yd.user.feign.request.sysmenu.ApiSysMenuAddRequest;
import com.yd.user.feign.request.sysmenu.ApiSysMenuEditRequest;
import com.yd.user.feign.request.sysmenu.ApiSysMenuPageRequest;
import com.yd.user.feign.request.sysmenu.ApiSysMenuTreeListRequest;
import com.yd.user.feign.response.sysmenu.ApiSysMenuDetailResponse;
import com.yd.user.feign.response.sysmenu.ApiSysMenuPageResponse;
import com.yd.user.feign.response.sysmenu.ApiSysMenuTreeListResponse;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.util.List;
/** /**
* <p> * 菜单信息
* 菜单权限表 前端控制器
* </p>
* *
* @author zxm * @author zxm
* @since 2025-07-31 * @since 2025-07-31
*/ */
@RestController @RestController
@RequestMapping("/sysMenu") @RequestMapping("/sysMenu")
public class SysMenuController { @Validated
public class ApiSysMenuController implements ApiSysMenuFeignClient {
@Autowired
private ApiSysMenuService apiSysMenuService;
/**
* 树形菜单列表查询
* @param request
* @return
*/
@Override
public Result<List<ApiSysMenuTreeListResponse>> treeList(ApiSysMenuTreeListRequest request) {
return apiSysMenuService.treeList(request);
}
/**
* 菜单分页查询
* @param request
* @return
*/
@Override
public Result<IPage<ApiSysMenuPageResponse>> page(ApiSysMenuPageRequest request) {
return apiSysMenuService.page(request);
}
/**
* 获取菜单详情
* @param menuBizId 菜单唯一标识(业务ID)
* @return
*/
@Override
public Result<ApiSysMenuDetailResponse> detail(String menuBizId) {
return apiSysMenuService.detail(menuBizId);
}
/**
* 添加菜单
* @param request
* @return
*/
@Override
public Result add(ApiSysMenuAddRequest request) {
return apiSysMenuService.add(request);
}
/**
* 编辑菜单
* @param request
* @return
*/
@Override
public Result edit(ApiSysMenuEditRequest request) {
return apiSysMenuService.edit(request);
}
/**
* 删除菜单(逻辑删除) TODO
* @param menuBizId 菜单唯一标识(业务ID)
* @return
*/
@Override
public Result del(String menuBizId) {
return apiSysMenuService.del(menuBizId);
}
/**
* 编辑菜单状态 TODO
* @param menuBizId 菜单唯一标识(业务ID)
* @param status 状态(0:禁用 1:启用)
* @return
*/
@Override
public Result editStatus(String menuBizId,Integer status) {
return apiSysMenuService.editStatus(menuBizId,status);
}
} }
package com.yd.user.api.controller; package com.yd.user.api.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yd.common.result.Result; import com.yd.common.result.Result;
import com.yd.user.api.service.ApiSysProjectService;
import com.yd.user.feign.client.sysproject.ApiSysProjectFeignClient; import com.yd.user.feign.client.sysproject.ApiSysProjectFeignClient;
import com.yd.user.feign.request.sysproject.ApiSysProjectAddRequest; import com.yd.user.feign.request.sysproject.ApiSysProjectAddRequest;
import com.yd.user.feign.request.sysproject.ApiSysProjectEditRequest; import com.yd.user.feign.request.sysproject.ApiSysProjectEditRequest;
import com.yd.user.feign.request.sysproject.ApiSysProjectPageRequest; import com.yd.user.feign.request.sysproject.ApiSysProjectPageRequest;
import com.yd.user.feign.response.sysproject.ApiSysProjectDetailResponse; import com.yd.user.feign.response.sysproject.ApiSysProjectDetailResponse;
import com.yd.user.feign.response.sysproject.ApiSysProjectPageResponse;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
...@@ -16,27 +21,31 @@ import org.springframework.web.bind.annotation.RestController; ...@@ -16,27 +21,31 @@ import org.springframework.web.bind.annotation.RestController;
* @since 2025-07-31 * @since 2025-07-31
*/ */
@RestController @RestController
@RequestMapping("/ydSysProject") @RequestMapping("/sysProject")
@Validated
public class ApiSysProjectController implements ApiSysProjectFeignClient { public class ApiSysProjectController implements ApiSysProjectFeignClient {
@Autowired
private ApiSysProjectService apiSysProjectService;
/** /**
* 项目分页查询 * 项目分页查询
* @param request * @param request
* @return * @return
*/ */
@Override @Override
public Result page(ApiSysProjectPageRequest request) { public Result<IPage<ApiSysProjectPageResponse>> page(ApiSysProjectPageRequest request) {
return null; return apiSysProjectService.page(request);
} }
/** /**
* 获取项目详情 * 获取项目详情
* @param projectUid 项目唯一标识(业务ID) * @param projectBizId 项目唯一标识(业务ID)
* @return * @return
*/ */
@Override @Override
public Result<ApiSysProjectDetailResponse> detail(String projectUid) { public Result<ApiSysProjectDetailResponse> detail(String projectBizId) {
return null; return apiSysProjectService.detail(projectBizId);
} }
/** /**
...@@ -46,7 +55,7 @@ public class ApiSysProjectController implements ApiSysProjectFeignClient { ...@@ -46,7 +55,7 @@ public class ApiSysProjectController implements ApiSysProjectFeignClient {
*/ */
@Override @Override
public Result add(ApiSysProjectAddRequest request) { public Result add(ApiSysProjectAddRequest request) {
return null; return apiSysProjectService.add(request);
} }
/** /**
...@@ -56,27 +65,27 @@ public class ApiSysProjectController implements ApiSysProjectFeignClient { ...@@ -56,27 +65,27 @@ public class ApiSysProjectController implements ApiSysProjectFeignClient {
*/ */
@Override @Override
public Result edit(ApiSysProjectEditRequest request) { public Result edit(ApiSysProjectEditRequest request) {
return null; return apiSysProjectService.edit(request);
} }
/** /**
* 删除项目(逻辑删除) * 删除项目(逻辑删除) TODO
* @param projectUid 项目唯一标识(业务ID) * @param projectBizId 项目唯一标识(业务ID)
* @return * @return
*/ */
@Override @Override
public Result del(String projectUid) { public Result del(String projectBizId) {
return null; return null;
} }
/** /**
* 编辑项目状态 * 编辑项目状态
* @param projectUid 项目唯一标识(业务ID) * @param projectBizId 项目唯一标识(业务ID)
* @param status 状态(0:禁用 1:启用) * @param status 状态(0:禁用 1:启用)
* @return * @return
*/ */
@Override @Override
public Result editStatus(String projectUid, Integer status) { public Result editStatus(String projectBizId, Integer status) {
return null; return apiSysProjectService.editStatus(projectBizId,status);
} }
} }
package com.yd.user.api.controller; package com.yd.user.api.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yd.common.result.Result; import com.yd.common.result.Result;
import com.yd.user.api.service.ApiSysRoleService;
import com.yd.user.feign.client.sysrole.ApiSysRoleFeignClient; import com.yd.user.feign.client.sysrole.ApiSysRoleFeignClient;
import com.yd.user.feign.request.sysrole.ApiSysRoleAddRequest; import com.yd.user.feign.request.sysrole.ApiSysRoleAddRequest;
import com.yd.user.feign.request.sysrole.ApiSysRoleEditRequest; import com.yd.user.feign.request.sysrole.ApiSysRoleEditRequest;
import com.yd.user.feign.request.sysrole.ApiSysRolePageRequest; import com.yd.user.feign.request.sysrole.ApiSysRolePageRequest;
import com.yd.user.feign.response.sysrole.ApiSysRoleDetailResponse; import com.yd.user.feign.response.sysrole.ApiSysRoleDetailResponse;
import com.yd.user.feign.response.sysrole.ApiSysRolePageResponse;
import com.yd.user.service.service.ISysRoleService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
...@@ -17,26 +23,30 @@ import org.springframework.web.bind.annotation.RestController; ...@@ -17,26 +23,30 @@ import org.springframework.web.bind.annotation.RestController;
*/ */
@RestController @RestController
@RequestMapping("/sysRole") @RequestMapping("/sysRole")
@Validated
public class ApiSysRoleController implements ApiSysRoleFeignClient { public class ApiSysRoleController implements ApiSysRoleFeignClient {
@Autowired
private ApiSysRoleService apiSysRoleService;
/** /**
* 角色分页查询 * 角色分页查询
* @param request * @param request
* @return * @return
*/ */
@Override @Override
public Result page(ApiSysRolePageRequest request) { public Result<IPage<ApiSysRolePageResponse>> page(ApiSysRolePageRequest request) {
return null; return apiSysRoleService.page(request);
} }
/** /**
* 获取角色详情 * 获取角色详情
* @param roleUid 角色唯一标识(业务ID) * @param roleBizId 角色唯一标识(业务ID)
* @return * @return
*/ */
@Override @Override
public Result<ApiSysRoleDetailResponse> detail(String roleUid) { public Result<ApiSysRoleDetailResponse> detail(String roleBizId) {
return null; return apiSysRoleService.detail(roleBizId);
} }
/** /**
...@@ -46,7 +56,7 @@ public class ApiSysRoleController implements ApiSysRoleFeignClient { ...@@ -46,7 +56,7 @@ public class ApiSysRoleController implements ApiSysRoleFeignClient {
*/ */
@Override @Override
public Result add(ApiSysRoleAddRequest request) { public Result add(ApiSysRoleAddRequest request) {
return null; return apiSysRoleService.add(request);
} }
/** /**
...@@ -56,27 +66,28 @@ public class ApiSysRoleController implements ApiSysRoleFeignClient { ...@@ -56,27 +66,28 @@ public class ApiSysRoleController implements ApiSysRoleFeignClient {
*/ */
@Override @Override
public Result edit(ApiSysRoleEditRequest request) { public Result edit(ApiSysRoleEditRequest request) {
return null; return apiSysRoleService.edit(request);
} }
/** /**
* 删除角色(逻辑删除) * 删除角色(逻辑删除) TODO
* @param roleUid 角色唯一标识(业务ID) * @param roleBizId 角色唯一标识(业务ID)
* @return * @return
*/ */
@Override @Override
public Result del(String roleUid) { public Result del(String roleBizId) {
return null; return null;
} }
/** /**
* 编辑角色状态 * 编辑角色状态
* @param roleUid 角色唯一标识(业务ID) * @param roleBizId 角色唯一标识(业务ID)
* @param status 状态(0:禁用 1:启用) * @param status 状态(0:禁用 1:启用)
* @return * @return
*/ */
@Override @Override
public Result editStatus(String roleUid, Integer status) { public Result editStatus(String roleBizId, Integer status) {
return null;
return apiSysRoleService.editStatus(roleBizId,status);
} }
} }
...@@ -40,12 +40,12 @@ public class ApiSysTenantController implements ApiSysTenantFeignClient { ...@@ -40,12 +40,12 @@ public class ApiSysTenantController implements ApiSysTenantFeignClient {
/** /**
* 获取租户详情 * 获取租户详情
* @param tenantUid 租户唯一标识(业务ID) * @param tenantBizId 租户唯一标识(业务ID)
* @return * @return
*/ */
@Override @Override
public Result<ApiSysTenantDetailResponse> detail(String tenantUid) { public Result<ApiSysTenantDetailResponse> detail(String tenantBizId) {
return apiSysTenantService.detail(tenantUid); return apiSysTenantService.detail(tenantBizId);
} }
/** /**
...@@ -69,23 +69,23 @@ public class ApiSysTenantController implements ApiSysTenantFeignClient { ...@@ -69,23 +69,23 @@ public class ApiSysTenantController implements ApiSysTenantFeignClient {
} }
/** /**
* 删除租户(逻辑删除) * 删除租户(逻辑删除)TODO
* @param tenantUid 租户唯一标识(业务ID) * @param tenantBizId 租户唯一标识(业务ID)
* @return * @return
*/ */
@Override @Override
public Result del(String tenantUid) { public Result del(String tenantBizId) {
return null; return null;
} }
/** /**
* 编辑租户状态 * 编辑租户状态
* @param tenantUid 租户唯一标识(业务ID) * @param tenantBizId 租户唯一标识(业务ID)
* @param status 状态(0:禁用 1:启用) * @param status 状态(0:禁用 1:启用)
* @return * @return
*/ */
@Override @Override
public Result editStatus(String tenantUid, Integer status) { public Result editStatus(String tenantBizId, Integer status) {
return null; return apiSysTenantService.editStatus(tenantBizId,status);
} }
} }
...@@ -5,14 +5,19 @@ import com.yd.common.result.Result; ...@@ -5,14 +5,19 @@ import com.yd.common.result.Result;
import com.yd.user.api.service.ApiSysUserService; import com.yd.user.api.service.ApiSysUserService;
import com.yd.user.feign.client.sysuser.ApiSysUserFeignClient; import com.yd.user.feign.client.sysuser.ApiSysUserFeignClient;
import com.yd.user.feign.request.sysuser.ApiSysUserAddRequest; import com.yd.user.feign.request.sysuser.ApiSysUserAddRequest;
import com.yd.user.feign.request.sysuser.ApiSysUserEditPwdRequest;
import com.yd.user.feign.request.sysuser.ApiSysUserEditRequest; import com.yd.user.feign.request.sysuser.ApiSysUserEditRequest;
import com.yd.user.feign.request.sysuser.ApiSysUserPageRequest; import com.yd.user.feign.request.sysuser.ApiSysUserPageRequest;
import com.yd.user.feign.response.sysuser.ApiSysUserDetailResponse; import com.yd.user.feign.response.sysuser.ApiSysUserDetailResponse;
import com.yd.user.feign.response.sysuser.ApiSysUserPageResponse; import com.yd.user.feign.response.sysuser.ApiSysUserPageResponse;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
/** /**
* 用户信息 * 用户信息
* *
...@@ -21,6 +26,7 @@ import org.springframework.web.bind.annotation.RestController; ...@@ -21,6 +26,7 @@ import org.springframework.web.bind.annotation.RestController;
*/ */
@RestController @RestController
@RequestMapping("/sysUser") @RequestMapping("/sysUser")
@Validated
public class ApiSysUserController implements ApiSysUserFeignClient { public class ApiSysUserController implements ApiSysUserFeignClient {
@Autowired @Autowired
...@@ -58,10 +64,30 @@ public class ApiSysUserController implements ApiSysUserFeignClient { ...@@ -58,10 +64,30 @@ public class ApiSysUserController implements ApiSysUserFeignClient {
/** /**
* 获取用户详情 * 获取用户详情
* @param userUid 用户业务唯一标识id * @param userBizId 用户业务唯一标识id
* @return * @return
*/ */
public Result<ApiSysUserDetailResponse> detail(String userUid) { public Result<ApiSysUserDetailResponse> detail(String userBizId) {
return apiSysUserService.detail(userUid); return apiSysUserService.detail(userBizId);
}
/**
* 编辑用户状态
* @param userBizId
* @param status
* @return
*/
@Override
public Result editStatus(String userBizId,Integer status) {
return apiSysUserService.editStatus(userBizId,status);
}
/**
* 编辑用户密码 TODO
* @return
*/
@Override
public Result editPwd(ApiSysUserEditPwdRequest request) {
return null;
} }
} }
...@@ -2,10 +2,55 @@ package com.yd.user.api.dto; ...@@ -2,10 +2,55 @@ package com.yd.user.api.dto;
import lombok.Data; import lombok.Data;
/** /**
* 菜单添加和编辑校验入参的DTO * 菜单添加和编辑校验入参的DTO
*/ */
@Data @Data
public class ApiSysMenuAddAndEditReqCheckRequest { public class ApiSysMenuAddAndEditReqCheckDto {
/**
* 菜单id
*/
private String menuBizId;
/**
* 父菜单ID
*/
private String parentBizId;
/**
* 类型(1:目录 2:菜单 3:按钮)
*/
private Integer menuType;
/**
* 路由地址
*/
private String path;
/**
* 作用域(1:系统级(全局) 2:租户级 3:项目级)
*/
private Integer scope;
/**
* 所属租户ID(业务id)
*/
private String tenantBizId;
/**
* 所属项目ID(业务id)
*/
private String projectBizId;
/**
* 是否是超级管理员
*/
private Boolean isAdmin;
/**
* 操作来源 1-添加 2-编辑
*/
private String oprSource;
} }
package com.yd.user.api.service;public interface ApiRelProjectMenuService { package com.yd.user.api.service;
import com.yd.common.result.Result;
public interface ApiRelProjectMenuService {
Result addSingleRel(String projectBizId, String menuBizId);
} }
package com.yd.user.api.service; package com.yd.user.api.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yd.common.result.Result; import com.yd.common.result.Result;
import com.yd.user.feign.request.relprojectrole.ApiRelProjectRoleListAddRequest;
import com.yd.user.feign.request.relprojectrole.ApiRelProjectRoleListPageRequest;
import com.yd.user.feign.request.relprojectrole.ApiRelProjectRoleSelectPageRequest;
import com.yd.user.feign.response.relprojectrole.ApiRelProjectRoleListPageResponse;
import com.yd.user.feign.response.relprojectrole.ApiRelProjectRoleSelectPageResponse;
public interface ApiRelProjectRole { public interface ApiRelProjectRoleService {
Result<IPage<ApiRelProjectRoleListPageResponse>> page(ApiRelProjectRoleListPageRequest request);
Result addRoleList(ApiRelProjectRoleListAddRequest request);
Result del(Long id);
Result<IPage<ApiRelProjectRoleSelectPageResponse>> selectRolePage(ApiRelProjectRoleSelectPageRequest request);
Result addSingleRel(String projectBizId, String roleBizId); Result addSingleRel(String projectBizId, String roleBizId);
} }
package com.yd.user.api.service;public interface ApiRelProjectUserService { package com.yd.user.api.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yd.common.result.Result;
import com.yd.user.feign.request.relprojectuser.ApiRelProjectUserListAddRequest;
import com.yd.user.feign.request.relprojectuser.ApiRelProjectUserListPageRequest;
import com.yd.user.feign.request.relprojectuser.ApiRelProjectUserSelectPageRequest;
import com.yd.user.feign.response.relprojectuser.ApiRelProjectUserListPageResponse;
import com.yd.user.feign.response.relprojectuser.ApiRelProjectUserSelectPageResponse;
public interface ApiRelProjectUserService {
Result<IPage<ApiRelProjectUserListPageResponse>> page(ApiRelProjectUserListPageRequest request);
Result addUserList(ApiRelProjectUserListAddRequest request);
Result del(Long id);
Result<IPage<ApiRelProjectUserSelectPageResponse>> selectUserPage(ApiRelProjectUserSelectPageRequest request);
} }
package com.yd.user.api.service;public interface ApiRelTenantMenuService { package com.yd.user.api.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yd.common.result.Result;
import com.yd.user.feign.request.reltenantmenu.ApiRelTenantMenuListAddRequest;
import com.yd.user.feign.request.reltenantmenu.ApiRelTenantMenuListPageRequest;
import com.yd.user.feign.request.reltenantmenu.ApiRelTenantMenuSelectPageRequest;
import com.yd.user.feign.response.reltenantmenu.ApiRelTenantMenuListPageResponse;
import com.yd.user.feign.response.reltenantmenu.ApiRelTenantMenuSelectPageResponse;
public interface ApiRelTenantMenuService {
Result<IPage<ApiRelTenantMenuListPageResponse>> page(ApiRelTenantMenuListPageRequest request);
Result addMenuList(ApiRelTenantMenuListAddRequest request);
Result del(Long id);
Result<IPage<ApiRelTenantMenuSelectPageResponse>> selectMenuPage(ApiRelTenantMenuSelectPageRequest request);
Result addSingleRel(String tenantBizId, String menuBizId);
} }
package com.yd.user.api.service;public interface ApiRelTenantProjectService { package com.yd.user.api.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yd.common.result.Result;
import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectListAddRequest;
import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectListPageRequest;
import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectSelectPageRequest;
import com.yd.user.feign.response.reltenantproject.ApiRelTenantProjectListPageResponse;
import com.yd.user.feign.response.reltenantproject.ApiRelTenantProjectSelectPageResponse;
import java.util.List;
public interface ApiRelTenantProjectService {
Result<IPage<ApiRelTenantProjectListPageResponse>> page(ApiRelTenantProjectListPageRequest request);
Result addProjectList(ApiRelTenantProjectListAddRequest request);
Result del(Long id);
Result<IPage<ApiRelTenantProjectSelectPageResponse>> selectProjectPage(ApiRelTenantProjectSelectPageRequest request);
Result addSingleRel(String tenantBizId,String projectBizId);
Result delRelByProjectBizId(String projectBizId);
Result delRelByProjectBizIdNeTenantBizIdList(String projectBizId, List<String> tenantBizIdList);
Result delRelByTenantBizId(String tenantBizId);
} }
package com.yd.user.api.service; package com.yd.user.api.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yd.common.result.Result; import com.yd.common.result.Result;
import com.yd.user.feign.request.reltenantrole.ApiRelTenantRoleListAddRequest;
import com.yd.user.feign.request.reltenantrole.ApiRelTenantRoleListPageRequest;
import com.yd.user.feign.request.reltenantrole.ApiRelTenantRoleSelectPageRequest;
import com.yd.user.feign.response.reltenantrole.ApiRelTenantRoleListPageResponse;
import com.yd.user.feign.response.reltenantrole.ApiRelTenantRoleSelectPageResponse;
public interface RelTenantRoleService { public interface ApiRelTenantRoleService {
Result<IPage<ApiRelTenantRoleListPageResponse>> page(ApiRelTenantRoleListPageRequest request);
Result addRoleList(ApiRelTenantRoleListAddRequest request);
Result del(Long id);
Result<IPage<ApiRelTenantRoleSelectPageResponse>> selectRolePage(ApiRelTenantRoleSelectPageRequest request);
Result addSingleRel(String tenantBizId, String roleBizId); Result addSingleRel(String tenantBizId, String roleBizId);
} }
package com.yd.user.api.service;public interface ApiRelTenantUserService { package com.yd.user.api.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yd.common.result.Result;
import com.yd.user.feign.request.reltenantuser.ApiRelTenantUserListAddRequest;
import com.yd.user.feign.request.reltenantuser.ApiRelTenantUserListPageRequest;
import com.yd.user.feign.request.reltenantuser.ApiRelTenantUserSelectPageRequest;
import com.yd.user.feign.response.reltenantuser.ApiRelTenantUserListPageResponse;
import com.yd.user.feign.response.reltenantuser.ApiRelTenantUserSelectPageResponse;
public interface ApiRelTenantUserService {
Result<IPage<ApiRelTenantUserListPageResponse>> page(ApiRelTenantUserListPageRequest request);
Result addUserList(ApiRelTenantUserListAddRequest request);
Result del(Long id);
Result<IPage<ApiRelTenantUserSelectPageResponse>> selectUserPage(ApiRelTenantUserSelectPageRequest request);
Result addSingleRel(String tenantBizId, String userBizId);
} }
package com.yd.user.api.service;public interface ApiRelUserRoleService { package com.yd.user.api.service;
import com.yd.common.result.Result;
import com.yd.user.feign.request.reluserrole.ApiProjectUserRoleListAddRequest;
import com.yd.user.feign.request.reluserrole.ApiTenantUserRoleListAddRequest;
import com.yd.user.feign.response.reluserrole.ApiSelectedProjectUserRoleListResponse;
import com.yd.user.feign.response.reluserrole.ApiSelectedTenantUserRoleListResponse;
import java.util.List;
public interface ApiRelUserRoleService {
Result addTenantUserRoleList(ApiTenantUserRoleListAddRequest request);
Result<List<ApiSelectedTenantUserRoleListResponse>> selectedTenantUserRoleList(String tenantBizId, String userBizId);
Result addProjectUserRoleList(ApiProjectUserRoleListAddRequest request);
Result<List<ApiSelectedProjectUserRoleListResponse>> selectedProjectUserRoleList(String projectBizId, String userBizId);
} }
package com.yd.user.api.service;public interface ApiSysMenuService { package com.yd.user.api.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yd.common.result.Result;
import com.yd.user.feign.request.sysmenu.ApiSysMenuAddRequest;
import com.yd.user.feign.request.sysmenu.ApiSysMenuEditRequest;
import com.yd.user.feign.request.sysmenu.ApiSysMenuPageRequest;
import com.yd.user.feign.request.sysmenu.ApiSysMenuTreeListRequest;
import com.yd.user.feign.response.sysmenu.ApiSysMenuDetailResponse;
import com.yd.user.feign.response.sysmenu.ApiSysMenuPageResponse;
import com.yd.user.feign.response.sysmenu.ApiSysMenuTreeListResponse;
import java.util.List;
public interface ApiSysMenuService {
Result<List<ApiSysMenuTreeListResponse>> treeList(ApiSysMenuTreeListRequest request);
Result<IPage<ApiSysMenuPageResponse>> page(ApiSysMenuPageRequest request);
Result<ApiSysMenuDetailResponse> detail(String menuBizId);
Result add(ApiSysMenuAddRequest request);
Result edit(ApiSysMenuEditRequest request);
Result del(String menuBizId);
Result editStatus(String menuBizId, Integer status);
} }
package com.yd.user.api.service;public interface ApiSysProjectService { package com.yd.user.api.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yd.common.result.Result;
import com.yd.user.feign.request.sysproject.ApiSysProjectAddRequest;
import com.yd.user.feign.request.sysproject.ApiSysProjectEditRequest;
import com.yd.user.feign.request.sysproject.ApiSysProjectPageRequest;
import com.yd.user.feign.response.sysproject.ApiSysProjectDetailResponse;
import com.yd.user.feign.response.sysproject.ApiSysProjectPageResponse;
public interface ApiSysProjectService {
Result<IPage<ApiSysProjectPageResponse>> page(ApiSysProjectPageRequest request);
Result<ApiSysProjectDetailResponse> detail(String projectBizId);
Result add(ApiSysProjectAddRequest request);
Result edit(ApiSysProjectEditRequest request);
Result editStatus(String projectBizId, Integer status);
} }
package com.yd.user.api.service;public interface ApiSysRoleService { package com.yd.user.api.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yd.common.result.Result;
import com.yd.user.feign.request.sysrole.ApiSysRoleAddRequest;
import com.yd.user.feign.request.sysrole.ApiSysRoleEditRequest;
import com.yd.user.feign.request.sysrole.ApiSysRolePageRequest;
import com.yd.user.feign.response.sysrole.ApiSysRoleDetailResponse;
import com.yd.user.feign.response.sysrole.ApiSysRolePageResponse;
public interface ApiSysRoleService {
Result<IPage<ApiSysRolePageResponse>> page(ApiSysRolePageRequest request);
Result<ApiSysRoleDetailResponse> detail(String roleBizId);
Result add(ApiSysRoleAddRequest request);
Result edit(ApiSysRoleEditRequest request);
Result editStatus(String roleBizId, Integer status);
} }
...@@ -12,9 +12,11 @@ public interface ApiSysTenantService { ...@@ -12,9 +12,11 @@ public interface ApiSysTenantService {
Result<IPage<ApiSysTenantPageResponse>> page(ApiSysTenantPageRequest request); Result<IPage<ApiSysTenantPageResponse>> page(ApiSysTenantPageRequest request);
Result<ApiSysTenantDetailResponse> detail(String tenantUid); Result<ApiSysTenantDetailResponse> detail(String tenantBizId);
Result add(ApiSysTenantAddRequest request); Result add(ApiSysTenantAddRequest request);
Result edit(ApiSysTenantEditRequest request); Result edit(ApiSysTenantEditRequest request);
Result editStatus(String tenantBizId, Integer status);
} }
...@@ -16,5 +16,7 @@ public interface ApiSysUserService { ...@@ -16,5 +16,7 @@ public interface ApiSysUserService {
Result edit(ApiSysUserEditRequest request); Result edit(ApiSysUserEditRequest request);
Result<ApiSysUserDetailResponse> detail(String userUid); Result<ApiSysUserDetailResponse> detail(String userBizId);
Result editStatus(String userBizId,Integer status);
} }
package com.yd.user.api.service.impl;public class ApiRelProjectMenuServiceImpl { package com.yd.user.api.service.impl;
import com.yd.common.result.Result;
import com.yd.user.api.service.ApiRelProjectMenuService;
import com.yd.user.service.model.RelProjectMenu;
import com.yd.user.service.service.IRelProjectMenuService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@Service
public class ApiRelProjectMenuServiceImpl implements ApiRelProjectMenuService {
@Autowired
private IRelProjectMenuService iRelProjectMenuService;
/**
* 添加单个项目和菜单关系
* @param projectBizId
* @param menuBizId
* @return
*/
@Override
public Result addSingleRel(String projectBizId, String menuBizId) {
//新增关系
RelProjectMenu relProjectMenu = new RelProjectMenu();
relProjectMenu.setProjectBizId(projectBizId);
relProjectMenu.setMenuBizId(menuBizId);
iRelProjectMenuService.saveOrUpdate(relProjectMenu);
return Result.success();
}
} }
package com.yd.user.api.service.impl; package com.yd.user.api.service.impl;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yd.common.enums.ResultCode;
import com.yd.common.exception.BusinessException;
import com.yd.common.result.Result; import com.yd.common.result.Result;
import com.yd.user.api.service.ApiRelProjectRoleService; import com.yd.user.api.service.ApiRelProjectRoleService;
import com.yd.user.feign.request.relprojectrole.ApiRelProjectRoleListAddRequest;
import com.yd.user.feign.request.relprojectrole.ApiRelProjectRoleListPageRequest;
import com.yd.user.feign.request.relprojectrole.ApiRelProjectRoleSelectPageRequest;
import com.yd.user.feign.response.relprojectrole.ApiRelProjectRoleListPageResponse;
import com.yd.user.feign.response.relprojectrole.ApiRelProjectRoleSelectPageResponse;
import com.yd.user.feign.response.reltenantrole.ApiRelTenantRoleListPageResponse;
import com.yd.user.feign.response.reltenantrole.ApiRelTenantRoleSelectPageResponse;
import com.yd.user.service.model.RelProjectRole; import com.yd.user.service.model.RelProjectRole;
import com.yd.user.service.model.RelTenantRole;
import com.yd.user.service.service.IRelProjectRoleService; import com.yd.user.service.service.IRelProjectRoleService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
@Service @Service
public class ApiRelProjectRoleImpl implements ApiRelProjectRoleService { public class ApiRelProjectRoleServiceImpl implements ApiRelProjectRoleService {
@Autowired @Autowired
private IRelProjectRoleService iRelProjectRoleService; private IRelProjectRoleService iRelProjectRoleService;
/** /**
* 项目和角色关系分页查询
* @param request
* @return
*/
@Override
public Result<IPage<ApiRelProjectRoleListPageResponse>> page(ApiRelProjectRoleListPageRequest request) {
Page<ApiRelProjectRoleListPageResponse> page = new Page<>(request.getPageNo(), request.getPageSize());
IPage<ApiRelProjectRoleListPageResponse> iPage = iRelProjectRoleService.page(page, request);
return Result.success(iPage);
}
/**
* 添加项目和角色列表关系
* @param request
* @return
*/
@Override
public Result addRoleList(ApiRelProjectRoleListAddRequest request) {
List<RelProjectRole> list = new ArrayList<>();
if (CollectionUtils.isEmpty(request.getRoleBizIdList())) {
//角色唯一标识(业务ID) 列表(选中列表)不为空
list = request.getRoleBizIdList().stream().map(bizId -> {
RelProjectRole relProjectRole = new RelProjectRole();
relProjectRole.setProjectBizId(request.getProjectBizId());
relProjectRole.setRoleBizId(bizId);
return relProjectRole;
}).collect(Collectors.toList());
iRelProjectRoleService.saveOrUpdateBatch(list);
}
return Result.success();
}
/**
* 删除项目和角色关系
* @param id 项目和角色关系表主键id
* @return
*/
@Override
public Result del(Long id) {
RelProjectRole relProjectRole = iRelProjectRoleService.queryOne(id);
if (Objects.isNull(relProjectRole)) {
//数据不存在
throw new BusinessException(ResultCode.NULL_ERROR.getCode(),ResultCode.NULL_ERROR.getMessage());
}
iRelProjectRoleService.removeById(relProjectRole.getId());
return Result.success();
}
/**
* 导入-选择角色分页查询(查询当前项目级(当前所属项目绑定的角色)或者系统级(全局角色在任何地方都适用导入绑定)的角色表数据)
* @param request
* @return
*/
@Override
public Result<IPage<ApiRelProjectRoleSelectPageResponse>> selectRolePage(ApiRelProjectRoleSelectPageRequest request) {
Page<ApiRelProjectRoleSelectPageResponse> page = new Page<>(request.getPageNo(), request.getPageSize());
IPage<ApiRelProjectRoleSelectPageResponse> iPage = iRelProjectRoleService.selectProjectPage(page, request);
return Result.success(iPage);
}
/**
* 添加单个关系 * 添加单个关系
* @param projectBizId * @param projectBizId
* @param roleBizId * @param roleBizId
......
package com.yd.user.api.service.impl;public class ApiRelProjectUserServiceImpl { package com.yd.user.api.service.impl;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yd.common.enums.ResultCode;
import com.yd.common.exception.BusinessException;
import com.yd.common.result.Result;
import com.yd.user.api.service.ApiRelProjectUserService;
import com.yd.user.feign.request.relprojectuser.ApiRelProjectUserListAddRequest;
import com.yd.user.feign.request.relprojectuser.ApiRelProjectUserListPageRequest;
import com.yd.user.feign.request.relprojectuser.ApiRelProjectUserSelectPageRequest;
import com.yd.user.feign.response.relprojectuser.ApiRelProjectUserListPageResponse;
import com.yd.user.feign.response.relprojectuser.ApiRelProjectUserSelectPageResponse;
import com.yd.user.service.model.RelProjectUser;
import com.yd.user.service.service.IRelProjectUserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
@Service
public class ApiRelProjectUserServiceImpl implements ApiRelProjectUserService {
@Autowired
private IRelProjectUserService iRelProjectUserService;
/**
* 项目和用户关系分页查询
* @param request
* @return
*/
@Override
public Result<IPage<ApiRelProjectUserListPageResponse>> page(ApiRelProjectUserListPageRequest request) {
Page<ApiRelProjectUserListPageResponse> page = new Page<>(request.getPageNo(), request.getPageSize());
IPage<ApiRelProjectUserListPageResponse> iPage = iRelProjectUserService.page(page, request);
return Result.success(iPage);
}
/**
* 添加项目和用户列表关系
* @param request
* @return
*/
@Override
public Result addUserList(ApiRelProjectUserListAddRequest request) {
List<RelProjectUser> list = new ArrayList<>();
if (CollectionUtils.isEmpty(request.getUserBizIdList())) {
//用户唯一标识(业务ID) 列表(选中列表)不为空
list = request.getUserBizIdList().stream().map(bizId -> {
RelProjectUser relTenantUser = new RelProjectUser();
relTenantUser.setProjectBizId(request.getProjectBizId());
relTenantUser.setUserBizId(bizId);
return relTenantUser;
}).collect(Collectors.toList());
iRelProjectUserService.saveOrUpdateBatch(list);
}
return Result.success();
}
/**
* 删除项目和用户关系
* @param id 项目和用户关系表主键id
* @return
*/
@Override
public Result del(Long id) {
RelProjectUser relProjectUser = iRelProjectUserService.queryOne(id);
if (Objects.isNull(relProjectUser)) {
//数据不存在
throw new BusinessException(ResultCode.NULL_ERROR.getCode(),ResultCode.NULL_ERROR.getMessage());
}
iRelProjectUserService.removeById(relProjectUser.getId());
return Result.success();
}
/**
* 导入-选择用户分页查询(查询用户库的用户id不在当前项目用户关系的用户id列表中的数据)
* @param request
* @return
*/
@Override
public Result<IPage<ApiRelProjectUserSelectPageResponse>> selectUserPage(ApiRelProjectUserSelectPageRequest request) {
Page<ApiRelProjectUserSelectPageResponse> page = new Page<>(request.getPageNo(), request.getPageSize());
IPage<ApiRelProjectUserSelectPageResponse> iPage = iRelProjectUserService.selectUserPage(page, request);
return Result.success(iPage);
}
} }
package com.yd.user.api.service.impl;public class ApiRelTenantMenuServiceImpl { package com.yd.user.api.service.impl;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yd.common.enums.ResultCode;
import com.yd.common.exception.BusinessException;
import com.yd.common.result.Result;
import com.yd.user.api.service.ApiRelTenantMenuService;
import com.yd.user.feign.request.reltenantmenu.ApiRelTenantMenuListAddRequest;
import com.yd.user.feign.request.reltenantmenu.ApiRelTenantMenuListPageRequest;
import com.yd.user.feign.request.reltenantmenu.ApiRelTenantMenuSelectPageRequest;
import com.yd.user.feign.response.reltenantmenu.ApiRelTenantMenuListPageResponse;
import com.yd.user.feign.response.reltenantmenu.ApiRelTenantMenuSelectPageResponse;
import com.yd.user.service.model.RelTenantMenu;
import com.yd.user.service.service.IRelTenantMenuService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
@Service
public class ApiRelTenantMenuServiceImpl implements ApiRelTenantMenuService {
@Autowired
private IRelTenantMenuService iRelTenantMenuService;
/**
* 租户和菜单关系分页查询
* @param request
* @return
*/
@Override
public Result<IPage<ApiRelTenantMenuListPageResponse>> page(ApiRelTenantMenuListPageRequest request) {
Page<ApiRelTenantMenuListPageResponse> page = new Page<>(request.getPageNo(), request.getPageSize());
IPage<ApiRelTenantMenuListPageResponse> iPage = iRelTenantMenuService.page(page, request);
return Result.success(iPage);
}
/**
* 添加租户和菜单列表关系
* @param request
* @return
*/
@Override
public Result addMenuList(ApiRelTenantMenuListAddRequest request) {
List<RelTenantMenu> list = new ArrayList<>();
if (CollectionUtils.isEmpty(request.getMenuBizIdList())) {
//菜单唯一标识(业务ID) 列表(选中列表)不为空
list = request.getMenuBizIdList().stream().map(bizId -> {
RelTenantMenu relTenantMenu = new RelTenantMenu();
relTenantMenu.setTenantBizId(request.getTenantBizId());
relTenantMenu.setMenuBizId(bizId);
return relTenantMenu;
}).collect(Collectors.toList());
iRelTenantMenuService.saveOrUpdateBatch(list);
}
return Result.success();
}
/**
* 删除租户和菜单关系
* @param id 租户和菜单关系表主键id
* @return
*/
@Override
public Result del(Long id) {
RelTenantMenu relTenantMenu = iRelTenantMenuService.queryOne(id);
if (Objects.isNull(relTenantMenu)) {
//数据不存在
throw new BusinessException(ResultCode.NULL_ERROR.getCode(),ResultCode.NULL_ERROR.getMessage());
}
iRelTenantMenuService.removeById(relTenantMenu.getId());
return Result.success();
}
/**
* 导入-选择菜单分页查询(查询当前租户级(当前所属租户绑定的菜单)或者系统级(全局菜单在任何地方都适用导入绑定)的菜单表数据)
* @param request
* @return
*/
@Override
public Result<IPage<ApiRelTenantMenuSelectPageResponse>> selectMenuPage(ApiRelTenantMenuSelectPageRequest request) {
Page<ApiRelTenantMenuSelectPageResponse> page = new Page<>(request.getPageNo(), request.getPageSize());
IPage<ApiRelTenantMenuSelectPageResponse> iPage = iRelTenantMenuService.selectProjectPage(page, request);
return Result.success(iPage);
}
/**
* 添加单个租户和菜单关系
* @param tenantBizId
* @param menuBizId
* @return
*/
@Override
public Result addSingleRel(String tenantBizId, String menuBizId) {
//新增关系
RelTenantMenu relTenantMenu = new RelTenantMenu();
relTenantMenu.setTenantBizId(tenantBizId);
relTenantMenu.setMenuBizId(menuBizId);
iRelTenantMenuService.saveOrUpdate(relTenantMenu);
return Result.success();
}
} }
package com.yd.user.api.service.impl;public class ApiRelTenantProjectServiceImpl { package com.yd.user.api.service.impl;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yd.common.enums.ResultCode;
import com.yd.common.exception.BusinessException;
import com.yd.common.result.Result;
import com.yd.user.api.service.ApiRelTenantProjectService;
import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectListAddRequest;
import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectListPageRequest;
import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectSelectPageRequest;
import com.yd.user.feign.response.reltenantproject.ApiRelTenantProjectListPageResponse;
import com.yd.user.feign.response.reltenantproject.ApiRelTenantProjectSelectPageResponse;
import com.yd.user.service.model.RelTenantProject;
import com.yd.user.service.service.IRelTenantProjectService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
@Service
public class ApiRelTenantProjectServiceImpl implements ApiRelTenantProjectService {
@Autowired
private IRelTenantProjectService iRelTenantProjectService;
/**
* 租户和项目关系分页查询
* @param request
* @return
*/
@Override
public Result<IPage<ApiRelTenantProjectListPageResponse>> page(ApiRelTenantProjectListPageRequest request) {
Page<ApiRelTenantProjectListPageResponse> page = new Page<>(request.getPageNo(), request.getPageSize());
IPage<ApiRelTenantProjectListPageResponse> iPage = iRelTenantProjectService.page(page, request);
return Result.success(iPage);
}
/**
* 添加租户和项目列表关系
* @param request
* @return
*/
@Override
public Result addProjectList(ApiRelTenantProjectListAddRequest request) {
List<RelTenantProject> list = new ArrayList<>();
if (CollectionUtils.isEmpty(request.getProjectBizIdList())) {
//项目唯一标识(业务ID) 列表(选中列表)不为空
list = request.getProjectBizIdList().stream().map(bizId -> {
RelTenantProject relTenantProject = new RelTenantProject();
relTenantProject.setTenantBizId(request.getTenantBizId());
relTenantProject.setProjectBizId(bizId);
return relTenantProject;
}).collect(Collectors.toList());
iRelTenantProjectService.saveOrUpdateBatch(list);
}
return Result.success();
}
/**
* 删除租户和项目关系
* @param id 租户和项目关系表主键id
* @return
*/
@Override
public Result del(Long id) {
RelTenantProject relTenantProject = iRelTenantProjectService.queryOne(id);
if (Objects.isNull(relTenantProject)) {
//数据不存在
throw new BusinessException(ResultCode.NULL_ERROR.getCode(),ResultCode.NULL_ERROR.getMessage());
}
iRelTenantProjectService.removeById(relTenantProject.getId());
return Result.success();
}
/**
* 导入-选择项目分页查询
* @param request
* @return
*/
@Override
public Result<IPage<ApiRelTenantProjectSelectPageResponse>> selectProjectPage(ApiRelTenantProjectSelectPageRequest request) {
Page<ApiRelTenantProjectSelectPageResponse> page = new Page<>(request.getPageNo(), request.getPageSize());
IPage<ApiRelTenantProjectSelectPageResponse> iPage = iRelTenantProjectService.selectProjectPage(page, request);
return Result.success(iPage);
}
/**
* 添加单个租户和项目关系
* @param tenantBizId
* @param projectBizId
* @return
*/
@Override
public Result addSingleRel(String tenantBizId, String projectBizId) {
//新增关系
RelTenantProject relTenantProject1 = new RelTenantProject();
relTenantProject1.setTenantBizId(tenantBizId);
relTenantProject1.setProjectBizId(projectBizId);
iRelTenantProjectService.saveOrUpdate(relTenantProject1);
return Result.success();
}
/**
* 根据项目业务id批量删除租户和项目关系
* @param projectBizId
* @return
*/
@Override
public Result delRelByProjectBizId(String projectBizId) {
iRelTenantProjectService.delRelByProjectBizId(projectBizId);
return Result.success();
}
/**
* 根据项目id删除关系(保留传入租户id列表的关系)
* @param projectBizId
* @return
*/
@Override
public Result delRelByProjectBizIdNeTenantBizIdList(String projectBizId, List<String> tenantBizIdList) {
iRelTenantProjectService.delRelByProjectBizIdNeTenantBizIdList(projectBizId,tenantBizIdList);
return Result.success();
}
/**
* 根据租户业务id批量删除租户和项目关系
* @param tenantBizId
* @return
*/
@Override
public Result delRelByTenantBizId(String tenantBizId) {
iRelTenantProjectService.delRelByTenantBizId(tenantBizId);
return Result.success();
}
} }
package com.yd.user.api.service.impl; package com.yd.user.api.service.impl;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yd.common.enums.ResultCode;
import com.yd.common.exception.BusinessException;
import com.yd.common.result.Result; import com.yd.common.result.Result;
import com.yd.user.api.service.ApiRelTenantRoleService; import com.yd.user.api.service.ApiRelTenantRoleService;
import com.yd.user.feign.request.reltenantrole.ApiRelTenantRoleListAddRequest;
import com.yd.user.feign.request.reltenantrole.ApiRelTenantRoleListPageRequest;
import com.yd.user.feign.request.reltenantrole.ApiRelTenantRoleSelectPageRequest;
import com.yd.user.feign.response.reltenantproject.ApiRelTenantProjectListPageResponse;
import com.yd.user.feign.response.reltenantproject.ApiRelTenantProjectSelectPageResponse;
import com.yd.user.feign.response.reltenantrole.ApiRelTenantRoleListPageResponse;
import com.yd.user.feign.response.reltenantrole.ApiRelTenantRoleSelectPageResponse;
import com.yd.user.service.model.RelTenantProject;
import com.yd.user.service.model.RelTenantRole; import com.yd.user.service.model.RelTenantRole;
import com.yd.user.service.service.IRelTenantRoleService; import com.yd.user.service.service.IRelTenantRoleService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
@Service @Service
public class RelTenantRoleServiceImpl implements ApiRelTenantRoleService { public class ApiRelTenantRoleServiceImpl implements ApiRelTenantRoleService {
@Autowired @Autowired
private IRelTenantRoleService iRelTenantRoleService; private IRelTenantRoleService iRelTenantRoleService;
/** /**
* 租户和角色关系分页查询
* @param request
* @return
*/
@Override
public Result<IPage<ApiRelTenantRoleListPageResponse>> page(ApiRelTenantRoleListPageRequest request) {
Page<ApiRelTenantRoleListPageResponse> page = new Page<>(request.getPageNo(), request.getPageSize());
IPage<ApiRelTenantRoleListPageResponse> iPage = iRelTenantRoleService.page(page, request);
return Result.success(iPage);
}
/**
* 添加租户和角色列表关系
* @param request
* @return
*/
@Override
public Result addRoleList(ApiRelTenantRoleListAddRequest request) {
List<RelTenantRole> list = new ArrayList<>();
if (CollectionUtils.isEmpty(request.getRoleBizIdList())) {
//角色唯一标识(业务ID) 列表(选中列表)不为空
list = request.getRoleBizIdList().stream().map(bizId -> {
RelTenantRole relTenantRole = new RelTenantRole();
relTenantRole.setTenantBizId(request.getTenantBizId());
relTenantRole.setRoleBizId(bizId);
return relTenantRole;
}).collect(Collectors.toList());
iRelTenantRoleService.saveOrUpdateBatch(list);
}
return Result.success();
}
/**
* 删除租户和角色关系
* @param id 租户和角色关系表主键id
* @return
*/
@Override
public Result del(Long id) {
RelTenantRole relTenantRole = iRelTenantRoleService.queryOne(id);
if (Objects.isNull(relTenantRole)) {
//数据不存在
throw new BusinessException(ResultCode.NULL_ERROR.getCode(),ResultCode.NULL_ERROR.getMessage());
}
iRelTenantRoleService.removeById(relTenantRole.getId());
return Result.success();
}
/**
* 导入-选择角色分页查询
* @param request
* @return
*/
@Override
public Result<IPage<ApiRelTenantRoleSelectPageResponse>> selectRolePage(ApiRelTenantRoleSelectPageRequest request) {
Page<ApiRelTenantRoleSelectPageResponse> page = new Page<>(request.getPageNo(), request.getPageSize());
IPage<ApiRelTenantRoleSelectPageResponse> iPage = iRelTenantRoleService.selectProjectPage(page, request);
return Result.success(iPage);
}
/**
* 添加-单个租户和项目关系 * 添加-单个租户和项目关系
* @param tenantBizId * @param tenantBizId
* @param roleBizId * @param roleBizId
......
package com.yd.user.api.service.impl;public class ApiRelTenantUserServiceImpl { package com.yd.user.api.service.impl;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yd.common.enums.ResultCode;
import com.yd.common.exception.BusinessException;
import com.yd.common.result.Result;
import com.yd.user.api.service.ApiRelTenantUserService;
import com.yd.user.feign.request.reltenantuser.ApiRelTenantUserListAddRequest;
import com.yd.user.feign.request.reltenantuser.ApiRelTenantUserListPageRequest;
import com.yd.user.feign.request.reltenantuser.ApiRelTenantUserSelectPageRequest;
import com.yd.user.feign.response.reltenantuser.ApiRelTenantUserListPageResponse;
import com.yd.user.feign.response.reltenantuser.ApiRelTenantUserSelectPageResponse;
import com.yd.user.service.model.RelTenantUser;
import com.yd.user.service.service.IRelTenantUserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
@Service
public class ApiRelTenantUserServiceImpl implements ApiRelTenantUserService {
@Autowired
private IRelTenantUserService iRelTenantUserService;
/**
* 租户和用户关系分页查询
* @param request
* @return
*/
@Override
public Result<IPage<ApiRelTenantUserListPageResponse>> page(ApiRelTenantUserListPageRequest request) {
Page<ApiRelTenantUserListPageResponse> page = new Page<>(request.getPageNo(), request.getPageSize());
IPage<ApiRelTenantUserListPageResponse> iPage = iRelTenantUserService.page(page, request);
return Result.success(iPage);
}
/**
* 添加租户和用户列表关系
* @param request
* @return
*/
@Override
public Result addUserList(ApiRelTenantUserListAddRequest request) {
List<RelTenantUser> list = new ArrayList<>();
if (CollectionUtils.isEmpty(request.getUserBizIdList())) {
//用户唯一标识(业务ID) 列表(选中列表)不为空
list = request.getUserBizIdList().stream().map(bizId -> {
RelTenantUser relTenantUser = new RelTenantUser();
relTenantUser.setTenantBizId(request.getTenantBizId());
relTenantUser.setUserBizId(bizId);
return relTenantUser;
}).collect(Collectors.toList());
iRelTenantUserService.saveOrUpdateBatch(list);
}
return Result.success();
}
/**
* 删除租户和用户关系
* @param id 租户和用户关系表主键id
* @return
*/
@Override
public Result del(Long id) {
RelTenantUser relTenantUser = iRelTenantUserService.queryOne(id);
if (Objects.isNull(relTenantUser)) {
//数据不存在
throw new BusinessException(ResultCode.NULL_ERROR.getCode(),ResultCode.NULL_ERROR.getMessage());
}
iRelTenantUserService.removeById(relTenantUser.getId());
return Result.success();
}
/**
* 导入-选择用户分页查询(查询用户库的用户id不在当前租户用户关系的用户id列表中的数据)
* @param request
* @return
*/
@Override
public Result<IPage<ApiRelTenantUserSelectPageResponse>> selectUserPage(ApiRelTenantUserSelectPageRequest request) {
Page<ApiRelTenantUserSelectPageResponse> page = new Page<>(request.getPageNo(), request.getPageSize());
IPage<ApiRelTenantUserSelectPageResponse> iPage = iRelTenantUserService.selectUserPage(page, request);
return Result.success(iPage);
}
/**
* 添加单个租户和用户关系
* @param tenantBizId
* @param userBizId
* @return
*/
@Override
public Result addSingleRel(String tenantBizId, String userBizId) {
RelTenantUser relTenantUser = new RelTenantUser();
relTenantUser.setTenantBizId(tenantBizId);
relTenantUser.setUserBizId(userBizId);
iRelTenantUserService.saveOrUpdate(relTenantUser);
return Result.success();
}
} }
package com.yd.user.api.service.impl;public class ApiRelUserRoleServiceImpl { package com.yd.user.api.service.impl;
import com.yd.common.result.Result;
import com.yd.user.api.service.ApiRelUserRoleService;
import com.yd.user.feign.request.reluserrole.ApiProjectUserRoleListAddRequest;
import com.yd.user.feign.request.reluserrole.ApiTenantUserRoleListAddRequest;
import com.yd.user.feign.response.reluserrole.ApiSelectedProjectUserRoleListResponse;
import com.yd.user.feign.response.reluserrole.ApiSelectedTenantUserRoleListResponse;
import com.yd.user.service.model.RelUserRole;
import com.yd.user.service.service.IRelUserRoleService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.util.List;
import java.util.stream.Collectors;
@Service
public class ApiRelUserRoleServiceImpl implements ApiRelUserRoleService {
@Autowired
private IRelUserRoleService iRelUserRoleService;
/**
* 租户管理-添加用户角色列表关系
* @param request
* @return
*/
@Override
public Result addTenantUserRoleList(ApiTenantUserRoleListAddRequest request) {
//先删后新增关系
//删除租户用户角色列表关系
iRelUserRoleService.delRelTenantUserRole(request.getTenantBizId(),request.getUserBizId());
//新增租户用户角色列表关系
if (!CollectionUtils.isEmpty(request.getRoleBizIdList())) {
List<RelUserRole> list = request.getRoleBizIdList().stream().map(bizId -> {
RelUserRole relUserRole = new RelUserRole();
relUserRole.setTenantBizId(request.getTenantBizId());
relUserRole.setUserBizId(request.getUserBizId());
relUserRole.setRoleBizId(bizId);
return relUserRole;
}).collect(Collectors.toList());
iRelUserRoleService.saveOrUpdateBatch(list);
}
return Result.success();
}
/**
* 租户管理-用户配置-权限配置-查询选中的角色列表
* @return
*/
@Override
public Result<List<ApiSelectedTenantUserRoleListResponse>> selectedTenantUserRoleList(String tenantBizId, String userBizId) {
List<ApiSelectedTenantUserRoleListResponse> list = iRelUserRoleService.selectedTenantUserRoleList(tenantBizId,userBizId);
return Result.success(list);
}
/**
* 项目管理-用户配置-权限配置-添加用户角色列表关系
* @param request
* @return
*/
@Override
public Result addProjectUserRoleList(ApiProjectUserRoleListAddRequest request) {
//先删后新增关系
//删除项目用户角色列表关系
iRelUserRoleService.delRelProjectUserRole(request.getProjectBizId(),request.getUserBizId());
//新增租户用户角色列表关系
if (!CollectionUtils.isEmpty(request.getRoleBizIdList())) {
List<RelUserRole> list = request.getRoleBizIdList().stream().map(bizId -> {
RelUserRole relUserRole = new RelUserRole();
relUserRole.setProjectBizId(request.getProjectBizId());
relUserRole.setUserBizId(request.getUserBizId());
relUserRole.setRoleBizId(bizId);
return relUserRole;
}).collect(Collectors.toList());
iRelUserRoleService.saveOrUpdateBatch(list);
}
return Result.success();
}
/**
* 项目管理-用户配置-权限配置-查询选中的角色列表
* @return
*/
@Override
public Result<List<ApiSelectedProjectUserRoleListResponse>> selectedProjectUserRoleList(String projectBizId, String userBizId) {
List<ApiSelectedProjectUserRoleListResponse> list = iRelUserRoleService.selectedProjectUserRoleList(projectBizId,userBizId);
return Result.success(list);
}
} }
package com.yd.user.api.service.impl;public class ApiSysMenuServiceImpl { package com.yd.user.api.service.impl;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yd.common.enums.CommonEnum;
import com.yd.common.enums.MenuTypeEnum;
import com.yd.common.enums.ResultCode;
import com.yd.common.exception.BusinessException;
import com.yd.common.result.Result;
import com.yd.common.utils.RandomStringGenerator;
import com.yd.user.api.dto.ApiSysMenuAddAndEditReqCheckDto;
import com.yd.user.api.service.ApiRelProjectMenuService;
import com.yd.user.api.service.ApiRelTenantMenuService;
import com.yd.user.api.service.ApiSysMenuService;
import com.yd.user.feign.request.sysmenu.ApiSysMenuAddRequest;
import com.yd.user.feign.request.sysmenu.ApiSysMenuEditRequest;
import com.yd.user.feign.request.sysmenu.ApiSysMenuPageRequest;
import com.yd.user.feign.request.sysmenu.ApiSysMenuTreeListRequest;
import com.yd.user.feign.response.sysmenu.ApiSysMenuDetailResponse;
import com.yd.user.feign.response.sysmenu.ApiSysMenuPageResponse;
import com.yd.user.feign.response.sysmenu.ApiSysMenuTreeListResponse;
import com.yd.user.service.dto.SysMenuDto;
import com.yd.user.service.model.SysMenu;
import com.yd.user.service.service.ISysMenuService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.util.List;
import java.util.Objects;
@Service
public class ApiSysMenuServiceImpl implements ApiSysMenuService {
@Autowired
private ISysMenuService iSysMenuService;
@Autowired
private ApiRelTenantMenuService apiRelTenantMenuService;
@Autowired
private ApiRelProjectMenuService apiRelProjectMenuService;
/**
* 树形菜单列表查询
* @param request
* @return
*/
@Override
public Result<List<ApiSysMenuTreeListResponse>> treeList(ApiSysMenuTreeListRequest request) {
return null;
}
/**
* 菜单分页查询
* @param request
* @return
*/
@Override
public Result<IPage<ApiSysMenuPageResponse>> page(ApiSysMenuPageRequest request) {
return null;
}
/**
* 获取菜单详情
* @param menuBizId 菜单唯一标识(业务ID)
* @return
*/
@Override
public Result<ApiSysMenuDetailResponse> detail(String menuBizId) {
Result<SysMenu> result = checkSysMenuIsExist(menuBizId);
SysMenu sysMenu = result.getData();
ApiSysMenuDetailResponse response = new ApiSysMenuDetailResponse();
BeanUtils.copyProperties(sysMenu,response);
return Result.success(response);
}
/**
* 添加菜单
* @param request
* @return
*/
@Override
public Result add(ApiSysMenuAddRequest request) {
//TODO 当前登录用户的角色类型 true是超级管理员 false是超级管理员
Boolean isAdmin = false;
ApiSysMenuAddAndEditReqCheckDto dto = new ApiSysMenuAddAndEditReqCheckDto();
BeanUtils.copyProperties(request,dto);
dto.setIsAdmin(isAdmin);
dto.setOprSource(CommonEnum.OPR_SOURCE_ADD.getCode());
//菜单添加和编辑校验入参的合理性(非查询库校验)
addAndEditReqCheck(dto);
//校验菜单名称唯一性
List<SysMenu> list = iSysMenuService.queryList(SysMenuDto.builder()
.menuName(request.getMenuName())
.build());
if (!CollectionUtils.isEmpty(list)) {
throw new BusinessException(ResultCode.MENU_NAME_EXISTS.getCode(),ResultCode.MENU_NAME_EXISTS.getMessage());
}
SysMenu sysMenu = new SysMenu();
BeanUtils.copyProperties(request,sysMenu);
sysMenu.setMenuBizId(RandomStringGenerator.generateBizId16(CommonEnum.UID_TYPE_MENU.getCode()));
//添加和编辑保存设置参数公共方法
sysMenu = addAndEditSaveSetCommon(sysMenu);
iSysMenuService.saveOrUpdate(sysMenu);
//新增或者编辑-更新租户菜单关系、更新项目菜单关系公共方法
addAndEditByRelCommon(request.getTenantBizId(),
request.getProjectBizId(),
sysMenu.getMenuBizId(),
request.getScope(),
CommonEnum.OPR_SOURCE_ADD.getCode());
return Result.success();
}
/**
* 编辑菜单
* @param request
* @return
*/
@Override
public Result edit(ApiSysMenuEditRequest request) {
//TODO 当前登录用户的角色类型 true是超级管理员 false是超级管理员
Boolean isAdmin = false;
ApiSysMenuAddAndEditReqCheckDto dto = new ApiSysMenuAddAndEditReqCheckDto();
BeanUtils.copyProperties(request,dto);
dto.setIsAdmin(isAdmin);
dto.setOprSource(CommonEnum.OPR_SOURCE_EDIT.getCode());
//菜单添加和编辑校验入参的合理性(非查询库校验)
addAndEditReqCheck(dto);
//校验菜单是否存在
Result<SysMenu> result = checkSysMenuIsExist(request.getMenuBizId());
SysMenu sysMenu = result.getData();
//校验菜单名称唯一性
List<SysMenu> list = iSysMenuService.queryList(SysMenuDto.builder()
.menuName(request.getMenuName())
.menuBizId(request.getMenuBizId())
.isExcludeMy(true)
.build());
if (!CollectionUtils.isEmpty(list)) {
throw new BusinessException(ResultCode.MENU_NAME_EXISTS.getCode(),ResultCode.MENU_NAME_EXISTS.getMessage());
}
BeanUtils.copyProperties(request,sysMenu);
//添加和编辑保存设置参数公共方法
sysMenu = addAndEditSaveSetCommon(sysMenu);
iSysMenuService.saveOrUpdate(sysMenu);
//新增或者编辑-更新租户菜单关系、更新项目菜单关系公共方法 TODO
// addAndEditByRelCommon(request.getTenantBizId(),
// request.getProjectBizId(),
// sysMenu.getMenuBizId(),
// request.getScope(),
// CommonEnum.OPR_SOURCE_EDIT.getCode());
return Result.success();
}
/**
* 新增或者编辑-更新租户菜单关系、更新项目菜单关系公共方法
* @param tenantBizId 租户id
* @param projectBizId 项目id
* @param menuBizId 菜单id
* @param scope 作用域
* @param oprSource 操作来源 1-添加 2-编辑
*/
public void addAndEditByRelCommon(String tenantBizId,
String projectBizId,
String menuBizId,
Integer scope,
String oprSource) {
if (CommonEnum.OPR_SOURCE_ADD.getCode().equals(oprSource)) {
//添加来源
if (CommonEnum.SCOPE_TENANT.getCode().equals(scope.toString())) {
//作用域租户级-新增租户菜单关系
apiRelTenantMenuService.addSingleRel(tenantBizId,menuBizId);
}
if (CommonEnum.SCOPE_PROJECT.getCode().equals(scope.toString())) {
//作用域项目级-新增项目菜单关系
apiRelProjectMenuService.addSingleRel(projectBizId,menuBizId);
}
}else if (CommonEnum.OPR_SOURCE_EDIT.getCode().equals(oprSource)) {
//编辑来源 TODO
}
}
/**
* 添加和编辑保存设置参数公共方法
* @param sysMenu
* @return
*/
public SysMenu addAndEditSaveSetCommon(SysMenu sysMenu) {
if (CommonEnum.SCOPE_SYS.getCode().equals(sysMenu.getScope().toString())) {
//系统级
sysMenu.setTenantBizId("");
sysMenu.setProjectBizId("");
}else if (CommonEnum.SCOPE_TENANT.getCode().equals(sysMenu.getScope().toString())) {
//租户级
sysMenu.setProjectBizId("");
}else if (CommonEnum.SCOPE_PROJECT.getCode().equals(sysMenu.getScope().toString())) {
//项目级
sysMenu.setTenantBizId("");
}
return sysMenu;
}
/**
* 菜单添加和编辑校验入参的合理性(非查询库校验)
* @param dto
*/
public void addAndEditReqCheck(ApiSysMenuAddAndEditReqCheckDto dto) {
if (MenuTypeEnum.ML.getCode().equals(dto.getMenuType().toString())
&& StringUtils.isBlank(dto.getPath())) {
//菜单类型为目录,路由地址不能为空
throw new BusinessException("菜单类型为目录,路由地址不能为空!");
}
if (MenuTypeEnum.CD.getCode().equals(dto.getMenuType().toString())
&& StringUtils.isBlank(dto.getPath())) {
//菜单类型为菜单,路由地址不能为空
throw new BusinessException("菜单类型为菜单,路由地址不能为空!");
}
if (dto.getParentBizId().equals(dto.getMenuBizId())) {
//父级菜单不能为当前菜单
throw new BusinessException("父级菜单不能为当前菜单!!");
}
if (!dto.getIsAdmin() && CommonEnum.SCOPE_SYS.getCode().equals(dto.getScope().toString())) {
//非超级管理员不能选择系统级作用域
throw new BusinessException("非超级管理员不能选择系统级作用域!");
}
//校验作用域scope字段,如果为作用域租户级所属租户id必须传值
if(CommonEnum.SCOPE_TENANT.getCode().equals(dto.getScope().toString())
&& StringUtils.isBlank(dto.getTenantBizId())) {
throw new BusinessException("租户级作用域,所属租户id不能为空");
}
//校验作用域scope字段,如果为作用域项目级所属项目id必须传值
if(CommonEnum.SCOPE_PROJECT.getCode().equals(dto.getScope().toString())
&& StringUtils.isBlank(dto.getProjectBizId())) {
throw new BusinessException("项目级作用域,所属项目id不能为空");
}
}
/**
* 删除菜单(逻辑删除)
* @param menuBizId 菜单唯一标识(业务ID)
* @return
*/
@Override
public Result del(String menuBizId) {
return null;
}
/**
* 编辑菜单状态
* @param menuBizId 菜单唯一标识(业务ID)
* @param status 状态(0:禁用 1:启用)
* @return
*/
@Override
public Result editStatus(String menuBizId, Integer status) {
return null;
}
/**
* 校验菜单是否存在
* @param menuBizId
* @return
*/
public Result<SysMenu> checkSysMenuIsExist(String menuBizId) {
SysMenu sysMenu = iSysMenuService.queryOne(menuBizId);
if (Objects.isNull(sysMenu)) {
//数据不存在
throw new BusinessException(ResultCode.NULL_ERROR.getCode(),ResultCode.NULL_ERROR.getMessage());
}
return Result.success(sysMenu);
}
} }
package com.yd.user.api.service.impl;public class ApiSysProjectServiceImpl { package com.yd.user.api.service.impl;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yd.common.enums.CommonEnum;
import com.yd.common.enums.ResultCode;
import com.yd.common.exception.BusinessException;
import com.yd.common.result.Result;
import com.yd.common.utils.RandomStringGenerator;
import com.yd.user.api.service.ApiRelTenantProjectService;
import com.yd.user.api.service.ApiSysProjectService;
import com.yd.user.feign.request.sysproject.ApiSysProjectAddRequest;
import com.yd.user.feign.request.sysproject.ApiSysProjectEditRequest;
import com.yd.user.feign.request.sysproject.ApiSysProjectPageRequest;
import com.yd.user.feign.response.sysproject.ApiSysProjectDetailResponse;
import com.yd.user.feign.response.sysproject.ApiSysProjectPageResponse;
import com.yd.user.service.dto.RelTenantProjectDto;
import com.yd.user.service.dto.SysProjectDto;
import com.yd.user.service.model.RelTenantProject;
import com.yd.user.service.model.SysProject;
import com.yd.user.service.model.SysTenant;
import com.yd.user.service.service.IRelTenantProjectService;
import com.yd.user.service.service.ISysProjectService;
import com.yd.user.service.service.ISysTenantService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.util.List;
import java.util.Objects;
@Service
public class ApiSysProjectServiceImpl implements ApiSysProjectService {
@Autowired
private ISysProjectService iSysProjectService;
@Autowired
private ISysTenantService iSysTenantService;
@Autowired
private IRelTenantProjectService iRelTenantProjectService;
@Autowired
private ApiRelTenantProjectService apiRelTenantProjectService;
/**
* 项目分页查询
* @param request
* @return
*/
@Override
public Result<IPage<ApiSysProjectPageResponse>> page(ApiSysProjectPageRequest request) {
Page<ApiSysProjectPageResponse> page = new Page<>(request.getPageNo(), request.getPageSize());
//TODO 当前登录用户的角色类型 true是超级管理员 false是超级管理员
Boolean isAdmin = false;
//TODO 当前登录人所属租户id
String loginTenantBizId = "";
IPage<ApiSysProjectPageResponse> iPage = iSysProjectService.page(page, request,isAdmin,loginTenantBizId);
return Result.success(iPage);
}
/**
* 获取项目详情
* @param projectBizId 项目唯一标识(业务ID)
* @return
*/
@Override
public Result<ApiSysProjectDetailResponse> detail(String projectBizId) {
SysProject sysProject = iSysProjectService.queryOne(projectBizId);
if (Objects.isNull(sysProject)) {
//数据不存在
throw new BusinessException(ResultCode.NULL_ERROR.getCode(),ResultCode.NULL_ERROR.getMessage());
}
ApiSysProjectDetailResponse response = new ApiSysProjectDetailResponse();
BeanUtils.copyProperties(sysProject,response);
if (StringUtils.isNotBlank(sysProject.getTenantBizId())) {
//租户id不为空,查名称
SysTenant sysTenant = iSysTenantService.queryOne(sysProject.getTenantBizId());
if (!Objects.isNull(sysTenant)) {
response.setTenantName(sysTenant.getTenantName());
}
}
return Result.success(response);
}
/**
* 添加项目
* @param request
* @return
*/
@Override
public Result add(ApiSysProjectAddRequest request) {
//TODO 当前登录用户的角色类型 true是超级管理员 false是超级管理员
Boolean isAdmin = false;
//添加和编辑校验入参的作用域字段
addAndEditReqScopeCheck(isAdmin,request.getScope(),request.getTenantBizId());
//校验项目名称的唯一性
List<SysProject> list = iSysProjectService.queryList(SysProjectDto.builder()
.projectName(request.getProjectName())
.build());
if (!CollectionUtils.isEmpty(list)) {
//项目名称已存在
throw new BusinessException(ResultCode.PROJECT_NAME_EXISTS.getCode(),ResultCode.PROJECT_NAME_EXISTS.getMessage());
}
//新增项目基础信息
SysProject sysProject = new SysProject();
BeanUtils.copyProperties(request,sysProject);
sysProject.setProjectBizId(RandomStringGenerator.generateBizId16(CommonEnum.UID_TYPE_PROJECT.getCode()));
//添加和编辑保存设置参数公共方法
sysProject = addAndEditSaveSetCommon(sysProject);
iSysProjectService.saveOrUpdate(sysProject);
if(CommonEnum.SCOPE_TENANT.getCode().equals(request.getScope().toString())){
//租户级作用域,新增租户和项目之间的关系,系统级作用域不用新增(只有在租户管理配置项目导入的时候新增租户项目关系)
apiRelTenantProjectService.addSingleRel(request.getTenantBizId(),sysProject.getProjectBizId());
}
return Result.success();
}
/**
* 编辑项目
* @param request
* @return
*/
@Override
public Result edit(ApiSysProjectEditRequest request) {
//TODO 当前登录用户的角色类型 true是超级管理员 false是超级管理员
Boolean isAdmin = false;
//添加和编辑校验入参的作用域字段
addAndEditReqScopeCheck(isAdmin,request.getScope(),request.getTenantBizId());
//校验项目是否存在·
Result<SysProject> result = checkSysProjectIsExist(request.getProjectBizId());
SysProject sysProject = result.getData();
//校验项目名称的唯一性
List<SysProject> list = iSysProjectService.queryList(SysProjectDto.builder()
.projectName(request.getProjectName())
.projectBizId(request.getProjectBizId())
.isExcludeMy(true)
.build());
if (!CollectionUtils.isEmpty(list)) {
//项目名称已存在
throw new BusinessException(ResultCode.PROJECT_NAME_EXISTS.getCode(),ResultCode.PROJECT_NAME_EXISTS.getMessage());
}
//编辑-作用域字段和所属租户改变校验 TODO 编辑作用域和所属租户的校验待定
// changeCheck(sysProject.getScope(),request.getScope(),request.getProjectBizId());
BeanUtils.copyProperties(request,sysProject);
//添加和编辑保存设置参数公共方法
sysProject = addAndEditSaveSetCommon(sysProject);
iSysProjectService.saveOrUpdate(sysProject);
return Result.success();
}
/**
* 添加和编辑保存设置参数公共方法
* @param sysProject
* @return
*/
public SysProject addAndEditSaveSetCommon(SysProject sysProject) {
if (CommonEnum.SCOPE_SYS.getCode().equals(sysProject.getScope().toString())) {
sysProject.setTenantBizId("");
}
return sysProject;
}
/**
* 添加和编辑校验入参的作用域字段
* @param isAdmin
* @param scope
* @param tenantBizId
*/
public void addAndEditReqScopeCheck(Boolean isAdmin,Integer scope,String tenantBizId) {
if (!isAdmin && CommonEnum.SCOPE_SYS.getCode().equals(scope.toString())) {
//非超级管理员不能选择系统级作用域
throw new BusinessException("非超级管理员不能选择系统级作用域!");
}
//校验作用域scope字段,如果为作用域租户级所属租户id必须传值
if(CommonEnum.SCOPE_TENANT.getCode().equals(scope.toString())
&& StringUtils.isBlank(tenantBizId)) {
throw new BusinessException("租户级作用域,所属租户id不能为空");
}
}
/**
* 编辑项目状态
* @param projectBizId 项目唯一标识(业务ID)
* @param status 状态(0:禁用 1:启用)
* @return
*/
@Override
public Result editStatus(String projectBizId, Integer status) {
//校验项目是否存在
Result<SysProject> result = checkSysProjectIsExist(projectBizId);
SysProject sysProject = result.getData();
sysProject.setStatus(status);
iSysProjectService.saveOrUpdate(sysProject);
return Result.success();
}
/**
* 编辑-作用域和所属租户改变校验
* @param oldScope 旧值(表里数据)
* @param newScope 新值(请求入参值)
* @param projectBizId 项目id
*/
public void changeCheck(Integer oldScope,Integer newScope,String projectBizId){
//TODO 发生改变暂时提示不让编辑这个作用域和所属租户
if (!oldScope.equals(newScope)) {
//发生改变,查询当前项目有没有绑定的租户关系,有则提示不能编辑作用域字段
List<RelTenantProject> list = iRelTenantProjectService.queryList(RelTenantProjectDto.builder().projectBizId(projectBizId).build());
if (!CollectionUtils.isEmpty(list)) {
throw new BusinessException("当前项目下有绑定的租户关系,不能编辑作用域选项!");
}
}
}
/**
* 校验项目是否存在
* @param projectBizId
* @return
*/
public Result<SysProject> checkSysProjectIsExist(String projectBizId) {
SysProject sysProject = iSysProjectService.queryOne(projectBizId);
if (Objects.isNull(sysProject)) {
//数据不存在
throw new BusinessException(ResultCode.NULL_ERROR.getCode(),ResultCode.NULL_ERROR.getMessage());
}
return Result.success(sysProject);
}
} }
package com.yd.user.api.service.impl;public class ApiSysRoleServiceImpl { package com.yd.user.api.service.impl;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yd.common.enums.CommonEnum;
import com.yd.common.enums.ResultCode;
import com.yd.common.exception.BusinessException;
import com.yd.common.result.Result;
import com.yd.common.utils.RandomStringGenerator;
import com.yd.user.api.service.ApiRelProjectRoleService;
import com.yd.user.api.service.ApiSysRoleService;
import com.yd.user.api.service.ApiRelTenantRoleService;
import com.yd.user.feign.request.sysrole.ApiSysRoleAddRequest;
import com.yd.user.feign.request.sysrole.ApiSysRoleEditRequest;
import com.yd.user.feign.request.sysrole.ApiSysRolePageRequest;
import com.yd.user.feign.response.sysrole.ApiSysRoleDetailResponse;
import com.yd.user.feign.response.sysrole.ApiSysRolePageResponse;
import com.yd.user.service.dto.RelTenantProjectDto;
import com.yd.user.service.dto.SysRoleDto;
import com.yd.user.service.model.RelTenantProject;
import com.yd.user.service.model.SysProject;
import com.yd.user.service.model.SysRole;
import com.yd.user.service.model.SysTenant;
import com.yd.user.service.service.IRelTenantProjectService;
import com.yd.user.service.service.ISysProjectService;
import com.yd.user.service.service.ISysRoleService;
import com.yd.user.service.service.ISysTenantService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
@Service
public class ApiSysRoleServiceImpl implements ApiSysRoleService {
@Autowired
private ISysRoleService iSysRoleService;
@Autowired
private IRelTenantProjectService iRelTenantProjectService;
@Autowired
private ISysProjectService iSysProjectService;
@Autowired
private ISysTenantService iSysTenantService;
@Autowired
private ApiRelTenantRoleService apiRelTenantRoleService;
@Autowired
private ApiRelProjectRoleService apiRelProjectRoleService;
/**
* 角色分页查询
* @param request
* @return
*/
@Override
public Result<IPage<ApiSysRolePageResponse>> page(ApiSysRolePageRequest request) {
Page<ApiSysRolePageResponse> page = new Page<>(request.getPageNo(), request.getPageSize());
//TODO 当前登录用户的角色类型 true是超级管理员 false是超级管理员
Boolean isAdmin = false;
//TODO 当前登录人所属租户id
String loginTenantBizId = "";
//查询当前租户下绑定的项目列表id
List<RelTenantProject> relTenantProjectList = iRelTenantProjectService.queryList(RelTenantProjectDto.builder().tenantBizId(loginTenantBizId).build());
List<String> projectBizIdList = new ArrayList<>();
if (CollectionUtils.isEmpty(relTenantProjectList)) {
projectBizIdList = relTenantProjectList.stream().map(RelTenantProject::getProjectBizId).collect(Collectors.toList());
}
IPage<ApiSysRolePageResponse> iPage = iSysRoleService.page(page, request,isAdmin,projectBizIdList,loginTenantBizId);
return Result.success(iPage);
}
/**
* 获取角色详情
* @param roleBizId 角色唯一标识(业务ID)
* @return
*/
@Override
public Result<ApiSysRoleDetailResponse> detail(String roleBizId) {
Result<SysRole> result = checkSysRoleIsExist(roleBizId);
SysRole sysRole = result.getData();
ApiSysRoleDetailResponse response = new ApiSysRoleDetailResponse();
BeanUtils.copyProperties(sysRole,response);
if (StringUtils.isNotBlank(response.getTenantBizId())) {
//租户id非空获取名称
SysTenant sysTenant = iSysTenantService.queryOne(response.getTenantBizId());
if (!Objects.isNull(sysTenant)) {
response.setTenantName(sysTenant.getTenantName());
}
}
if (StringUtils.isNotBlank(response.getProjectBizId())) {
//项目id非空获取名称
SysProject sysProject = iSysProjectService.queryOne(response.getProjectBizId());
if (!Objects.isNull(sysProject)) {
response.setProjectName(sysProject.getProjectName());
}
}
return Result.success(response);
}
/**
* 添加角色
* @param request
* @return
*/
@Override
public Result add(ApiSysRoleAddRequest request) {
//TODO 当前登录用户的角色类型 true是超级管理员 false是超级管理员
Boolean isAdmin = false;
//添加和编辑校验入参的作用域字段
addAndEditReqScopeCheck(isAdmin,request.getScope(),request.getTenantBizId(),request.getProjectBizId());
//校验角色名称的唯一性
List<SysRole> list = iSysRoleService.queryList(SysRoleDto.builder().roleName(request.getRoleName()).build());
if (!CollectionUtils.isEmpty(list)) {
throw new BusinessException(ResultCode.ROLE_NAME_EXISTS.getCode(),ResultCode.ROLE_NAME_EXISTS.getMessage());
}
//新增角色
SysRole sysRole = new SysRole();
BeanUtils.copyProperties(request,sysRole);
sysRole.setRoleBizId(RandomStringGenerator.generateBizId16(CommonEnum.UID_TYPE_ROLE.getCode()));
sysRole = addAndEditSaveSetCommon(sysRole);
iSysRoleService.saveOrUpdate(sysRole);
//新增或者编辑-更新租户校色关系、更新项目角色关系公共方法
addAndEditByRelCommon(request.getTenantBizId(),
request.getProjectBizId(),
sysRole.getRoleBizId(),
request.getScope(),
CommonEnum.OPR_SOURCE_ADD.getCode());
return Result.success();
}
/**
* 编辑角色
* @param request
* @return
*/
@Override
public Result edit(ApiSysRoleEditRequest request) {
//TODO 当前登录用户的角色类型 true是超级管理员 false是超级管理员
Boolean isAdmin = false;
//添加和编辑校验入参的作用域字段
addAndEditReqScopeCheck(isAdmin,request.getScope(),request.getTenantBizId(),request.getProjectBizId());
//校验角色是否存在
Result<SysRole> result = checkSysRoleIsExist(request.getRoleBizId());
SysRole sysRole = result.getData();
//校验角色名称的唯一性
List<SysRole> list = iSysRoleService.queryList(SysRoleDto.builder()
.roleName(request.getRoleName())
.roleBizId(request.getRoleBizId())
.isExcludeMy(true)
.build());
if (!CollectionUtils.isEmpty(list)) {
throw new BusinessException(ResultCode.ROLE_NAME_EXISTS.getCode(),ResultCode.ROLE_NAME_EXISTS.getMessage());
}
//TODO 编辑作用域和所属租户、所属项目的校验待定-换绑的意思
//编辑角色
BeanUtils.copyProperties(request,sysRole);
sysRole = addAndEditSaveSetCommon(sysRole);
iSysRoleService.saveOrUpdate(sysRole);
//新增或者编辑-更新租户校色关系、更新项目角色关系公共方法 TODO
// addAndEditByRelCommon(request.getTenantBizId(),
// request.getProjectBizId(),
// sysRole.getRoleBizId(),
// request.getScope(),
// CommonEnum.OPR_SOURCE_ADD.getCode());
return Result.success();
}
/**
* 编辑角色状态
* @param roleBizId 角色唯一标识(业务ID)
* @param status 状态(0:禁用 1:启用)
* @return
*/
@Override
public Result editStatus(String roleBizId, Integer status) {
//校验角色是否存在
Result<SysRole> result = checkSysRoleIsExist(roleBizId);
SysRole sysRole = result.getData();
sysRole.setStatus(status);
iSysRoleService.saveOrUpdate(sysRole);
return Result.success();
}
/**
* 添加和编辑保存设置参数公共方法
* @param sysRole
* @return
*/
public SysRole addAndEditSaveSetCommon(SysRole sysRole) {
if (CommonEnum.SCOPE_SYS.getCode().equals(sysRole.getScope().toString())) {
//系统级
sysRole.setTenantBizId("");
sysRole.setProjectBizId("");
}else if (CommonEnum.SCOPE_TENANT.getCode().equals(sysRole.getScope().toString())) {
//租户级
sysRole.setProjectBizId("");
}else if (CommonEnum.SCOPE_PROJECT.getCode().equals(sysRole.getScope().toString())) {
//项目级
sysRole.setTenantBizId("");
}
return sysRole;
}
/**
* 新增或者编辑-更新租户角色关系、更新项目角色关系公共方法
* @param tenantBizId 租户id
* @param projectBizId 项目id
* @param roleBizId 角色id
* @param scope 作用域
* @param oprSource 操作来源 1-添加 2-编辑
*/
public void addAndEditByRelCommon(String tenantBizId,
String projectBizId,
String roleBizId,
Integer scope,
String oprSource) {
if (CommonEnum.OPR_SOURCE_ADD.getCode().equals(oprSource)) {
//添加来源
if (CommonEnum.SCOPE_TENANT.getCode().equals(scope.toString())) {
//作用域租户级-新增租户角色关系
apiRelTenantRoleService.addSingleRel(tenantBizId,roleBizId);
}
if (CommonEnum.SCOPE_PROJECT.getCode().equals(scope.toString())) {
//作用域项目级-新增项目角色关系
apiRelProjectRoleService.addSingleRel(projectBizId,roleBizId);
}
}else if (CommonEnum.OPR_SOURCE_EDIT.getCode().equals(oprSource)) {
//编辑来源 TODO
}
}
/**
* 添加和编辑校验入参的作用域字段
* @param isAdmin
* @param scope
* @param tenantBizId
* @param projectBizId
*/
public void addAndEditReqScopeCheck(Boolean isAdmin,Integer scope,String tenantBizId,String projectBizId) {
if (!isAdmin && CommonEnum.SCOPE_SYS.getCode().equals(scope.toString())) {
//非超级管理员不能选择系统级作用域
throw new BusinessException("非超级管理员不能选择系统级作用域!");
}
//校验作用域scope字段,如果为作用域租户级所属租户id必须传值
if(CommonEnum.SCOPE_TENANT.getCode().equals(scope.toString())
&& StringUtils.isBlank(tenantBizId)) {
throw new BusinessException("租户级作用域,所属租户id不能为空");
}
//校验作用域scope字段,如果为作用域项目级所属项目id必须传值
if(CommonEnum.SCOPE_PROJECT.getCode().equals(scope.toString())
&& StringUtils.isBlank(projectBizId)) {
throw new BusinessException("项目级作用域,所属项目id不能为空");
}
}
/**
* 校验角色是否存在
* @param roleBizId
* @return
*/
public Result<SysRole> checkSysRoleIsExist(String roleBizId) {
SysRole sysRole = iSysRoleService.queryOne(roleBizId);
if (Objects.isNull(sysRole)) {
//数据不存在
throw new BusinessException(ResultCode.NULL_ERROR.getCode(),ResultCode.NULL_ERROR.getMessage());
}
return Result.success(sysRole);
}
} }
...@@ -16,6 +16,7 @@ import com.yd.user.feign.response.systenant.ApiSysTenantPageResponse; ...@@ -16,6 +16,7 @@ import com.yd.user.feign.response.systenant.ApiSysTenantPageResponse;
import com.yd.user.service.dto.SysTenantDto; import com.yd.user.service.dto.SysTenantDto;
import com.yd.user.service.model.SysTenant; import com.yd.user.service.model.SysTenant;
import com.yd.user.service.service.ISysTenantService; import com.yd.user.service.service.ISysTenantService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
...@@ -37,19 +38,25 @@ public class ApiSysTenantServiceImpl implements ApiSysTenantService { ...@@ -37,19 +38,25 @@ public class ApiSysTenantServiceImpl implements ApiSysTenantService {
*/ */
@Override @Override
public Result<IPage<ApiSysTenantPageResponse>> page(ApiSysTenantPageRequest request) { public Result<IPage<ApiSysTenantPageResponse>> page(ApiSysTenantPageRequest request) {
//TODO 当前登录用户的角色类型 true是超级管理员 false是超级管理员
Boolean isAdmin = false;
//TODO 获取当前登录用户id
String userBizId = "";
//TODO 当前登录人所属租户id
String loginTenantBizId = "";
Page<ApiSysTenantPageResponse> page = new Page<>(request.getPageNo(), request.getPageSize()); Page<ApiSysTenantPageResponse> page = new Page<>(request.getPageNo(), request.getPageSize());
IPage<ApiSysTenantPageResponse> iPage = iSysTenantService.page(page, request); IPage<ApiSysTenantPageResponse> iPage = iSysTenantService.page(page, request,isAdmin,userBizId,loginTenantBizId);
return Result.success(iPage); return Result.success(iPage);
} }
/** /**
* 获取租户详情 * 获取租户详情
* @param tenantUid 租户唯一标识(业务ID) * @param tenantBizId 租户唯一标识(业务ID)
* @return * @return
*/ */
@Override @Override
public Result<ApiSysTenantDetailResponse> detail(String tenantUid) { public Result<ApiSysTenantDetailResponse> detail(String tenantBizId) {
SysTenant sysTenant = iSysTenantService.queryOne(tenantUid); SysTenant sysTenant = iSysTenantService.queryOne(tenantBizId);
ApiSysTenantDetailResponse response = null; ApiSysTenantDetailResponse response = null;
if (!Objects.isNull(sysTenant)) { if (!Objects.isNull(sysTenant)) {
response = new ApiSysTenantDetailResponse(); response = new ApiSysTenantDetailResponse();
...@@ -65,6 +72,12 @@ public class ApiSysTenantServiceImpl implements ApiSysTenantService { ...@@ -65,6 +72,12 @@ public class ApiSysTenantServiceImpl implements ApiSysTenantService {
*/ */
@Override @Override
public Result add(ApiSysTenantAddRequest request) { public Result add(ApiSysTenantAddRequest request) {
//TODO 当前登录用户的角色类型 true是超级管理员 false是超级管理员
Boolean isAdmin = false;
if (!isAdmin) {
//非超级管理员不能添加租户
throw new BusinessException("非超级管理员不能添加租户!");
}
List<SysTenant> list = iSysTenantService.queryList(SysTenantDto.builder() List<SysTenant> list = iSysTenantService.queryList(SysTenantDto.builder()
.tenantName(request.getTenantName()) .tenantName(request.getTenantName())
.build()); .build());
...@@ -75,8 +88,8 @@ public class ApiSysTenantServiceImpl implements ApiSysTenantService { ...@@ -75,8 +88,8 @@ public class ApiSysTenantServiceImpl implements ApiSysTenantService {
//新增 //新增
SysTenant sysTenant = new SysTenant(); SysTenant sysTenant = new SysTenant();
BeanUtils.copyProperties(request,sysTenant); BeanUtils.copyProperties(request,sysTenant);
sysTenant.setTenantUid(RandomStringGenerator.generateUid16(CommonEnum.UID_TYPE_TENANT.getCode())); sysTenant.setTenantBizId(RandomStringGenerator.generateBizId16(CommonEnum.UID_TYPE_TENANT.getCode()));
iSysTenantService.save(sysTenant); iSysTenantService.saveOrUpdate(sysTenant);
return Result.success(); return Result.success();
} }
...@@ -87,7 +100,58 @@ public class ApiSysTenantServiceImpl implements ApiSysTenantService { ...@@ -87,7 +100,58 @@ public class ApiSysTenantServiceImpl implements ApiSysTenantService {
*/ */
@Override @Override
public Result edit(ApiSysTenantEditRequest request) { public Result edit(ApiSysTenantEditRequest request) {
//TODO 当前登录用户的角色类型 true是超级管理员 false是超级管理员
Boolean isAdmin = false;
//校验租户是否存在
checkSysTenantIsExist(request.getTenantBizId());
//校验租户名称的唯一性
List<SysTenant> list = iSysTenantService.queryList(SysTenantDto.builder()
.tenantName(request.getTenantName())
.tenantBizId(request.getTenantBizId())
.isExcludeMy(true)
.build());
if (!CollectionUtils.isEmpty(list)) {
//租户名称已存在
throw new BusinessException(ResultCode.TENANT_NAME_EXISTS.getCode(),ResultCode.TENANT_NAME_EXISTS.getMessage());
}
//编辑
SysTenant sysTenant = new SysTenant();
BeanUtils.copyProperties(request,sysTenant);
sysTenant.setTenantBizId(RandomStringGenerator.generateBizId16(CommonEnum.UID_TYPE_TENANT.getCode()));
iSysTenantService.saveOrUpdate(sysTenant);
return Result.success(); return Result.success();
} }
/**
* 编辑租户状态
* @param tenantBizId 租户唯一标识(业务ID)
* @param status 状态(0:禁用 1:启用)
* @return
*/
@Override
public Result editStatus(String tenantBizId, Integer status) {
//校验租户是否存在
Result<SysTenant> result = checkSysTenantIsExist(tenantBizId);
SysTenant sysTenant = result.getData();
sysTenant.setStatus(status);
iSysTenantService.saveOrUpdate(sysTenant);
return Result.success();
}
/**
* 校验租户是否存在
* @param tenantBizId
* @return
*/
public Result<SysTenant> checkSysTenantIsExist(String tenantBizId) {
SysTenant sysTenant = iSysTenantService.queryOne(tenantBizId);
if (Objects.isNull(sysTenant)) {
//数据不存在
throw new BusinessException(ResultCode.NULL_ERROR.getCode(),ResultCode.NULL_ERROR.getMessage());
}
return Result.success(sysTenant);
}
} }
...@@ -2,21 +2,29 @@ package com.yd.user.api.service.impl; ...@@ -2,21 +2,29 @@ package com.yd.user.api.service.impl;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yd.common.enums.CommonEnum;
import com.yd.common.enums.ResultCode; import com.yd.common.enums.ResultCode;
import com.yd.common.exception.BusinessException; import com.yd.common.exception.BusinessException;
import com.yd.common.result.Result; import com.yd.common.result.Result;
import com.yd.common.utils.RandomStringGenerator;
import com.yd.user.api.service.ApiRelTenantUserService;
import com.yd.user.api.service.ApiSysUserService; import com.yd.user.api.service.ApiSysUserService;
import com.yd.user.feign.request.sysuser.ApiSysUserAddRequest; import com.yd.user.feign.request.sysuser.ApiSysUserAddRequest;
import com.yd.user.feign.request.sysuser.ApiSysUserEditRequest; import com.yd.user.feign.request.sysuser.ApiSysUserEditRequest;
import com.yd.user.feign.request.sysuser.ApiSysUserPageRequest; import com.yd.user.feign.request.sysuser.ApiSysUserPageRequest;
import com.yd.user.feign.response.sysuser.ApiSysUserDetailResponse; import com.yd.user.feign.response.sysuser.ApiSysUserDetailResponse;
import com.yd.user.feign.response.sysuser.ApiSysUserPageResponse; import com.yd.user.feign.response.sysuser.ApiSysUserPageResponse;
import com.yd.user.service.dto.SysUserDto;
import com.yd.user.service.model.SysTenant;
import com.yd.user.service.model.SysUser; import com.yd.user.service.model.SysUser;
import com.yd.user.service.service.ISysUserService; import com.yd.user.service.service.ISysUserService;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.time.LocalDateTime;
import java.util.List;
import java.util.Objects; import java.util.Objects;
@Service @Service
...@@ -25,6 +33,9 @@ public class ApiSysUserServiceImpl implements ApiSysUserService { ...@@ -25,6 +33,9 @@ public class ApiSysUserServiceImpl implements ApiSysUserService {
@Autowired @Autowired
private ISysUserService iSysUserService; private ISysUserService iSysUserService;
@Autowired
private ApiRelTenantUserService apiRelTenantUserService;
/** /**
* 用户分页查询 * 用户分页查询
* @param request * @param request
...@@ -32,8 +43,12 @@ public class ApiSysUserServiceImpl implements ApiSysUserService { ...@@ -32,8 +43,12 @@ public class ApiSysUserServiceImpl implements ApiSysUserService {
*/ */
@Override @Override
public Result<IPage<ApiSysUserPageResponse>> page(ApiSysUserPageRequest request) { public Result<IPage<ApiSysUserPageResponse>> page(ApiSysUserPageRequest request) {
//TODO 当前登录用户的角色类型 true是超级管理员 false是超级管理员
Boolean isAdmin = false;
//TODO 当前登录人所属租户id
String loginTenantBizId = "";
Page<ApiSysUserPageResponse> page = new Page<>(request.getPageNo(), request.getPageSize()); Page<ApiSysUserPageResponse> page = new Page<>(request.getPageNo(), request.getPageSize());
IPage<ApiSysUserPageResponse> iPage = iSysUserService.page(page, request); IPage<ApiSysUserPageResponse> iPage = iSysUserService.page(page, request,isAdmin,loginTenantBizId);
return Result.success(iPage); return Result.success(iPage);
} }
...@@ -44,7 +59,33 @@ public class ApiSysUserServiceImpl implements ApiSysUserService { ...@@ -44,7 +59,33 @@ public class ApiSysUserServiceImpl implements ApiSysUserService {
*/ */
@Override @Override
public Result add(ApiSysUserAddRequest request) { public Result add(ApiSysUserAddRequest request) {
return null; LocalDateTime now = LocalDateTime.now();
//TODO 当前登录用户的角色类型 true是超级管理员 false是超级管理员
Boolean isAdmin = false;
//TODO 当前登录人所属租户id
String loginTenantBizId = "";
//添加和编辑校验入参的唯一性
addAndEditReqCheckCommon(request.getUserName(),
request.getMobile(),
request.getEmail(),
CommonEnum.OPR_SOURCE_ADD.getCode(),"");
//新增用户数据
SysUser sysUser = new SysUser();
BeanUtils.copyProperties(request,sysUser);
//TODO 修改密码,加密密码
//用户业务唯一id
sysUser.setUserBizId(RandomStringGenerator.generateBizId16(CommonEnum.UID_TYPE_USER.getCode()));
sysUser.setIsSuperAdmin(0);
sysUser.setLastPasswordTime(now);
sysUser.setSourceType(1);
iSysUserService.saveOrUpdate(sysUser);
if (!isAdmin) {
//非超级管理员,添加租户和用户的关系
apiRelTenantUserService.addSingleRel(loginTenantBizId,sysUser.getUserBizId());
}
return Result.success();
} }
/** /**
...@@ -54,17 +95,78 @@ public class ApiSysUserServiceImpl implements ApiSysUserService { ...@@ -54,17 +95,78 @@ public class ApiSysUserServiceImpl implements ApiSysUserService {
*/ */
@Override @Override
public Result edit(ApiSysUserEditRequest request) { public Result edit(ApiSysUserEditRequest request) {
return null; LocalDateTime now = LocalDateTime.now();
//校验用户是否存在
Result<SysUser> result = checkSysUserIsExist(request.getUserBizId());
SysUser sysUser = result.getData();
//添加和编辑校验入参的唯一性
addAndEditReqCheckCommon(request.getUserName(),
request.getMobile(),
request.getEmail(),
CommonEnum.OPR_SOURCE_EDIT.getCode(),request.getUserBizId());
//编辑用户
BeanUtils.copyProperties(request,sysUser);
//TODO 修改密码,加密密码
sysUser.setLastPasswordTime(now);
iSysUserService.saveOrUpdate(sysUser);
return Result.success();
}
/**
* 添加和编辑校验入参的唯一性
* @param userName
* @param mobile
* @param email
*/
public void addAndEditReqCheckCommon(String userName,String mobile,String email,String oprSource,String userBizId) {
Boolean isExcludeMy = true;
if (CommonEnum.OPR_SOURCE_ADD.getCode().equals(oprSource)) {
//添加来源
userBizId = "";
isExcludeMy = false;
}
List<SysUser> userNameList = iSysUserService.queryList(SysUserDto.builder()
.userName(userName)
.userBizId(userBizId)
.isExcludeMy(isExcludeMy)
.build());
if (!CollectionUtils.isEmpty(userNameList)) {
throw new BusinessException("用户账号已存在");
}
List<SysUser> mobileList = iSysUserService.queryList(SysUserDto.builder()
.userName(mobile)
.userBizId(userBizId)
.isExcludeMy(isExcludeMy)
.build());
if (!CollectionUtils.isEmpty(mobileList)) {
throw new BusinessException("手机号已存在");
}
List<SysUser> emailList = iSysUserService.queryList(SysUserDto.builder()
.userName(email)
.userBizId(userBizId)
.isExcludeMy(isExcludeMy)
.build());
if (!CollectionUtils.isEmpty(emailList)) {
throw new BusinessException("邮箱已存在");
}
} }
/** /**
* 获取用户详情 * 获取用户详情
* @param userUid * @param userBizId
* @return * @return
*/ */
@Override @Override
public Result<ApiSysUserDetailResponse> detail(String userUid) { public Result<ApiSysUserDetailResponse> detail(String userBizId) {
SysUser sysUser = iSysUserService.queryOne(userUid); SysUser sysUser = iSysUserService.queryOne(userBizId);
ApiSysUserDetailResponse response = null; ApiSysUserDetailResponse response = null;
if (!Objects.isNull(sysUser)) { if (!Objects.isNull(sysUser)) {
response = new ApiSysUserDetailResponse(); response = new ApiSysUserDetailResponse();
...@@ -73,4 +175,35 @@ public class ApiSysUserServiceImpl implements ApiSysUserService { ...@@ -73,4 +175,35 @@ public class ApiSysUserServiceImpl implements ApiSysUserService {
return Result.success(response); return Result.success(response);
} }
/**
* 编辑用户状态
* @param userBizId
* @param status
* @return
*/
@Override
public Result editStatus(String userBizId, Integer status) {
//校验用户是否存在
Result<SysUser> result = checkSysUserIsExist(userBizId);
SysUser sysUser = result.getData();
sysUser.setStatus(status);
iSysUserService.saveOrUpdate(sysUser);
return Result.success();
}
/**
* 校验用户是否存在
* @param userBizId
* @return
*/
public Result<SysUser> checkSysUserIsExist(String userBizId) {
SysUser sysUser = iSysUserService.queryOne(userBizId);
if (Objects.isNull(sysUser)) {
//数据不存在
throw new BusinessException(ResultCode.NULL_ERROR.getCode(),ResultCode.NULL_ERROR.getMessage());
}
return Result.success(sysUser);
}
} }
#Generated by Maven
#Mon Jul 28 15:35:05 CST 2025
version=1.0-SNAPSHOT
groupId=com.yd
artifactId=yd-user-api
package com.yd.user.feign.client.relprojectrole;public class ApiRelProjectRoleFeignClient { package com.yd.user.feign.client.relprojectrole;
import com.yd.common.result.Result;
import com.yd.user.feign.fallback.relprojectrole.ApiRelProjectRoleFeignFallbackFactory;
import com.yd.user.feign.request.relprojectrole.ApiRelProjectRoleListAddRequest;
import com.yd.user.feign.request.relprojectrole.ApiRelProjectRoleListPageRequest;
import com.yd.user.feign.request.relprojectrole.ApiRelProjectRoleSelectPageRequest;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
import javax.validation.constraints.NotNull;
/**
* 用户服务:项目-角色关系信息Feign客户端
*/
@FeignClient(name = "yd-user-api", fallbackFactory = ApiRelProjectRoleFeignFallbackFactory.class)
public interface ApiRelProjectRoleFeignClient {
/**
* 项目和角色关系分页查询
* @param request
* @return
*/
@PostMapping("/page")
Result page(@Validated @RequestBody ApiRelProjectRoleListPageRequest request);
/**
* 添加项目和角色列表关系
* @param request
* @return
*/
@PostMapping("/add/role/list")
Result addRoleList(@Validated @RequestBody ApiRelProjectRoleListAddRequest request);
/**
* 删除项目和角色关系
* @param id 项目和角色关系表主键id
* @return
*/
@DeleteMapping("/del")
Result del(@NotNull(message = "项目和角色关系表主键id不能为空") @RequestParam(value = "id") Long id);
/**
* 导入-选择角色分页查询(查询当前项目级(当前所属项目绑定的角色)或者系统级(全局角色在任何地方都适用导入绑定)的角色表数据)
* @param request
* @return
*/
@PostMapping("/select/role/page")
Result selectRolePage(@Validated @RequestBody ApiRelProjectRoleSelectPageRequest request);
} }
package com.yd.user.feign.client.relprojectuser;public class ApiRelProjectUserFeignClient { package com.yd.user.feign.client.relprojectuser;
import com.yd.common.result.Result;
import com.yd.user.feign.fallback.relprojectuser.ApiRelProjectUserFeignFallbackFactory;
import com.yd.user.feign.request.relprojectuser.ApiRelProjectUserListAddRequest;
import com.yd.user.feign.request.relprojectuser.ApiRelProjectUserListPageRequest;
import com.yd.user.feign.request.relprojectuser.ApiRelProjectUserSelectPageRequest;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
import javax.validation.constraints.NotNull;
/**
* 用户服务:项目-用户关系信息Feign客户端
*/
@FeignClient(name = "yd-user-api", fallbackFactory = ApiRelProjectUserFeignFallbackFactory.class)
public interface ApiRelProjectUserFeignClient {
/**
* 项目和用户关系分页查询
* @param request
* @return
*/
@PostMapping("/page")
Result page(@Validated @RequestBody ApiRelProjectUserListPageRequest request);
/**
* 添加项目和用户列表关系
* @param request
* @return
*/
@PostMapping("/add/user/list")
Result addUserList(@Validated @RequestBody ApiRelProjectUserListAddRequest request);
/**
* 删除项目和用户关系
* @param id 项目和用户关系表主键id
* @return
*/
@DeleteMapping("/del")
Result del(@NotNull(message = "项目和用户关系表主键id不能为空") @RequestParam(value = "id") Long id);
/**
* 导入-选择用户分页查询(查询用户库的用户id不在当前项目用户关系的用户id列表中的数据)
* @param request
* @return
*/
@PostMapping("/select/user/page")
Result selectUserPage(@Validated @RequestBody ApiRelProjectUserSelectPageRequest request);
} }
package com.yd.user.feign.client.reltenantmenu;public class ApiRelTenantMenuFeignClient { package com.yd.user.feign.client.reltenantmenu;
import com.yd.common.result.Result;
import com.yd.user.feign.fallback.reltenantmenu.ApiRelTenantMenuFeignFallbackFactory;
import com.yd.user.feign.request.reltenantmenu.ApiRelTenantMenuListAddRequest;
import com.yd.user.feign.request.reltenantmenu.ApiRelTenantMenuListPageRequest;
import com.yd.user.feign.request.reltenantmenu.ApiRelTenantMenuSelectPageRequest;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
import javax.validation.constraints.NotNull;
/**
* 用户服务:租户-菜单关系信息Feign客户端
*/
@FeignClient(name = "yd-user-api", fallbackFactory = ApiRelTenantMenuFeignFallbackFactory.class)
public interface ApiRelTenantMenuFeignClient {
/**
* 租户和菜单关系分页查询
* @param request
* @return
*/
@PostMapping("/page")
Result page(@Validated @RequestBody ApiRelTenantMenuListPageRequest request);
/**
* 添加租户和菜单列表关系
* @param request
* @return
*/
@PostMapping("/add/menu/list")
Result addMenuList(@Validated @RequestBody ApiRelTenantMenuListAddRequest request);
/**
* 删除租户和菜单关系
* @param id 租户和菜单关系表主键id
* @return
*/
@DeleteMapping("/del")
Result del(@NotNull(message = "租户和菜单关系表主键id不能为空") @RequestParam(value = "id") Long id);
/**
* 导入-选择菜单分页查询(查询当前租户级(当前所属租户绑定的菜单)或者系统级(全局菜单在任何地方都适用导入绑定)的菜单表数据)
* @param request
* @return
*/
@PostMapping("/select/menu/page")
Result selectMenuPage(@Validated @RequestBody ApiRelTenantMenuSelectPageRequest request);
} }
package com.yd.user.feign.client.reltenantproject;public class ApiRelTenantProjectFeignClient { package com.yd.user.feign.client.reltenantproject;
import com.yd.common.result.Result;
import com.yd.user.feign.fallback.reltenantproject.ApiRelTenantProjectFeignFallbackFactory;
import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectListAddRequest;
import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectListPageRequest;
import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectSelectPageRequest;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
import javax.validation.constraints.NotNull;
/**
* 用户服务:租户-项目关系信息Feign客户端
*/
@FeignClient(name = "yd-user-api", fallbackFactory = ApiRelTenantProjectFeignFallbackFactory.class)
public interface ApiRelTenantProjectFeignClient {
/**
* 租户和项目关系分页查询
* @param request
* @return
*/
@PostMapping("/page")
Result page(@RequestBody ApiRelTenantProjectListPageRequest request);
/**
* 添加租户和项目列表关系
* @param request
* @return
*/
@PostMapping("/add/project/list")
Result addProjectList(@Validated @RequestBody ApiRelTenantProjectListAddRequest request);
/**
* 删除租户和项目关系
* @param id 租户和项目关系表主键id
* @return
*/
@DeleteMapping("/del")
Result del(@NotNull(message = "租户和项目关系表主键id不能为空") @RequestParam(value = "id") Long id);
/**
* 导入-选择项目分页查询(查询当前租户级(当前所属租户绑定的项目)或者系统级(全局项目在任何地方都适用导入绑定)的项目表数据)
* @param request
* @return
*/
@PostMapping("/select/project/page")
Result selectProjectPage(@RequestBody ApiRelTenantProjectSelectPageRequest request);
} }
package com.yd.user.feign.client.reltenantrole;public interface ApiRelTenantRoleFeignClient { package com.yd.user.feign.client.reltenantrole;
import com.yd.common.result.Result;
import com.yd.user.feign.fallback.reltenantrole.ApiRelTenantRoleFeignFallbackFactory;
import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectListAddRequest;
import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectSelectPageRequest;
import com.yd.user.feign.request.reltenantrole.ApiRelTenantRoleListAddRequest;
import com.yd.user.feign.request.reltenantrole.ApiRelTenantRoleListPageRequest;
import com.yd.user.feign.request.reltenantrole.ApiRelTenantRoleSelectPageRequest;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
import javax.validation.constraints.NotNull;
/**
* 用户服务:租户-角色关系信息Feign客户端
*/
@FeignClient(name = "yd-user-api", fallbackFactory = ApiRelTenantRoleFeignFallbackFactory.class)
public interface ApiRelTenantRoleFeignClient {
/**
* 租户和角色关系分页查询
* @param request
* @return
*/
@PostMapping("/page")
Result page(@RequestBody ApiRelTenantRoleListPageRequest request);
/**
* 添加租户和角色列表关系
* @param request
* @return
*/
@PostMapping("/add/role/list")
Result addRoleList(@Validated @RequestBody ApiRelTenantRoleListAddRequest request);
/**
* 删除租户和角色关系
* @param id 租户和角色关系表主键id
* @return
*/
@DeleteMapping("/del")
Result del(@NotNull(message = "租户和角色关系表主键id不能为空") @RequestParam(value = "id") Long id);
/**
* 导入-选择角色分页查询(查询当前租户级(当前所属租户绑定的角色)或者系统级(全局角色在任何地方都适用导入绑定)的角色表数据)
* @param request
* @return
*/
@PostMapping("/select/role/page")
Result selectRolePage(@Validated @RequestBody ApiRelTenantRoleSelectPageRequest request);
} }
package com.yd.user.feign.client.reltenantuser;public class ApiRelTenantUserFeignClient { package com.yd.user.feign.client.reltenantuser;
import com.yd.common.result.Result;
import com.yd.user.feign.fallback.reltenantuser.ApiRelTenantUserFeignFallbackFactory;
import com.yd.user.feign.request.reltenantuser.ApiRelTenantUserListAddRequest;
import com.yd.user.feign.request.reltenantuser.ApiRelTenantUserListPageRequest;
import com.yd.user.feign.request.reltenantuser.ApiRelTenantUserSelectPageRequest;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
import javax.validation.constraints.NotNull;
/**
* 用户服务:租户-用户关系信息Feign客户端
*/
@FeignClient(name = "yd-user-api", fallbackFactory = ApiRelTenantUserFeignFallbackFactory.class)
public interface ApiRelTenantUserFeignClient {
/**
* 租户和用户关系分页查询
* @param request
* @return
*/
@PostMapping("/page")
Result page(@Validated @RequestBody ApiRelTenantUserListPageRequest request);
/**
* 添加租户和用户列表关系
* @param request
* @return
*/
@PostMapping("/add/user/list")
Result addUserList(@Validated @RequestBody ApiRelTenantUserListAddRequest request);
/**
* 删除租户和用户关系
* @param id 租户和用户关系表主键id
* @return
*/
@DeleteMapping("/del")
Result del(@NotNull(message = "租户和用户关系表主键id不能为空") @RequestParam(value = "id") Long id);
/**
* 导入-选择用户分页查询(查询用户库的用户id不在当前租户用户关系的用户id列表中的数据)
* @param request
* @return
*/
@PostMapping("/select/user/page")
Result selectUserPage(@Validated @RequestBody ApiRelTenantUserSelectPageRequest request);
} }
package com.yd.user.feign.client.reluserrole;public interface ApiRelUserRoleFeignClient { package com.yd.user.feign.client.reluserrole;
import com.yd.common.result.Result;
import com.yd.user.feign.fallback.reluserrole.ApiRelUserRoleFeignFallbackFactory;
import com.yd.user.feign.request.reluserrole.ApiProjectUserRoleListAddRequest;
import com.yd.user.feign.request.reluserrole.ApiTenantUserRoleListAddRequest;
import com.yd.user.feign.response.reluserrole.ApiSelectedProjectUserRoleListResponse;
import com.yd.user.feign.response.reluserrole.ApiSelectedTenantUserRoleListResponse;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
import javax.validation.constraints.NotBlank;
import java.util.List;
/**
* 用户服务:用户-角色关系信息Feign客户端
*/
@FeignClient(name = "yd-user-api", fallbackFactory = ApiRelUserRoleFeignFallbackFactory.class)
public interface ApiRelUserRoleFeignClient {
/**
* 租户管理-用户配置-权限配置-添加用户角色列表关系
* @param request
* @return
*/
@PostMapping("/add/tenant/userRoleList")
Result addTenantUserRoleList(@Validated @RequestBody ApiTenantUserRoleListAddRequest request);
/**
* 租户管理-用户配置-权限配置-查询选中的角色列表
* @return
*/
@GetMapping("/selected/tenant/userRoleList")
Result<List<ApiSelectedTenantUserRoleListResponse>> selectedTenantUserRoleList(@NotBlank(message = "租户唯一标识(业务ID)不能为空") @RequestParam(value = "tenantBizId") String tenantBizId,
@NotBlank(message = "用户ID(业务id)不能为空") @RequestParam(value = "userBizId") String userBizId);
/**
* 项目管理-用户配置-权限配置-添加用户角色列表关系
* @param request
* @return
*/
@PostMapping("/add/project/userRoleList")
Result addProjectUserRoleList(@Validated @RequestBody ApiProjectUserRoleListAddRequest request);
/**
* 项目管理-用户配置-权限配置-查询选中的角色列表
* @return
*/
@GetMapping("/selected/project/userRoleList")
Result<List<ApiSelectedProjectUserRoleListResponse>> selectedProjectUserRoleList(@NotBlank(message = "项目唯一标识(业务ID)不能为空") @RequestParam(value = "projectBizId") String projectBizId,
@NotBlank(message = "用户ID(业务id)不能为空") @RequestParam(value = "userBizId") String userBizId);
} }
package com.yd.user.feign.client.sysmenu;public class ApiSysMenuFeignClient { package com.yd.user.feign.client.sysmenu;
import com.yd.common.result.Result;
import com.yd.user.feign.fallback.sysmenu.ApiSysMenuFeignFallbackFactory;
import com.yd.user.feign.request.sysmenu.ApiSysMenuAddRequest;
import com.yd.user.feign.request.sysmenu.ApiSysMenuEditRequest;
import com.yd.user.feign.request.sysmenu.ApiSysMenuPageRequest;
import com.yd.user.feign.request.sysmenu.ApiSysMenuTreeListRequest;
import com.yd.user.feign.response.sysmenu.ApiSysMenuDetailResponse;
import com.yd.user.feign.response.sysmenu.ApiSysMenuTreeListResponse;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.util.List;
/**
* 用户服务:菜单信息Feign客户端
*/
@FeignClient(name = "yd-user-api", fallbackFactory = ApiSysMenuFeignFallbackFactory.class)
public interface ApiSysMenuFeignClient {
/**
* 树形菜单列表查询
* @param request
* @return
*/
@PostMapping("/tree/list")
Result<List<ApiSysMenuTreeListResponse>> treeList(@RequestBody ApiSysMenuTreeListRequest request);
/**
* 菜单分页查询
* @param request
* @return
*/
@PostMapping("/page")
Result page(@RequestBody ApiSysMenuPageRequest request);
/**
* 获取菜单详情
* @param menuBizId 菜单唯一标识(业务ID)
* @return
*/
@GetMapping("/detail")
Result<ApiSysMenuDetailResponse> detail(@NotBlank(message = "菜单唯一标识(业务ID)不能为空") @RequestParam(value = "menuBizId") String menuBizId);
/**
* 添加菜单
* @param request
* @return
*/
@PostMapping("/add")
Result add(@Validated @RequestBody ApiSysMenuAddRequest request);
/**
* 编辑菜单
* @param request
* @return
*/
@PutMapping("/edit")
Result edit(@Validated @RequestBody ApiSysMenuEditRequest request);
/**
* 删除菜单(逻辑删除)
* @param menuBizId 菜单唯一标识(业务ID)
* @return
*/
@DeleteMapping("/del")
Result del(@NotBlank(message = "菜单唯一标识(业务ID)不能为空") @RequestParam(value = "menuBizId") String menuBizId);
/**
* 编辑菜单状态
* @param menuBizId 菜单唯一标识(业务ID)
* @param status 状态(0:禁用 1:启用)
* @return
*/
@PatchMapping("/edit/status")
Result editStatus(@NotBlank(message = "菜单唯一标识(业务ID)不能为空") @RequestParam(value = "menuBizId") String menuBizId,
@NotNull(message = "状态不能为空") @RequestParam(value = "status") Integer status);
} }
...@@ -7,8 +7,12 @@ import com.yd.user.feign.request.sysproject.ApiSysProjectEditRequest; ...@@ -7,8 +7,12 @@ import com.yd.user.feign.request.sysproject.ApiSysProjectEditRequest;
import com.yd.user.feign.request.sysproject.ApiSysProjectPageRequest; import com.yd.user.feign.request.sysproject.ApiSysProjectPageRequest;
import com.yd.user.feign.response.sysproject.ApiSysProjectDetailResponse; import com.yd.user.feign.response.sysproject.ApiSysProjectDetailResponse;
import org.springframework.cloud.openfeign.FeignClient; import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
/** /**
* 用户服务-系统项目信息Feign客户端 * 用户服务-系统项目信息Feign客户端
*/ */
...@@ -25,11 +29,11 @@ public interface ApiSysProjectFeignClient { ...@@ -25,11 +29,11 @@ public interface ApiSysProjectFeignClient {
/** /**
* 获取项目详情 * 获取项目详情
* @param projectUid 项目唯一标识(业务ID) * @param projectBizId 项目唯一标识(业务ID)
* @return * @return
*/ */
@GetMapping("/detail") @GetMapping("/detail")
Result<ApiSysProjectDetailResponse> detail(@RequestParam(value = "projectUid") String projectUid); Result<ApiSysProjectDetailResponse> detail(@NotBlank(message = "项目唯一标识(业务ID)不能为空") @RequestParam(value = "projectBizId") String projectBizId);
/** /**
* 添加项目 * 添加项目
...@@ -37,33 +41,33 @@ public interface ApiSysProjectFeignClient { ...@@ -37,33 +41,33 @@ public interface ApiSysProjectFeignClient {
* @return * @return
*/ */
@PostMapping("/add") @PostMapping("/add")
Result add(@RequestBody ApiSysProjectAddRequest request); Result add(@Validated @RequestBody ApiSysProjectAddRequest request);
/** /**
* 编辑项目 * 编辑项目
* @param request * @param request
* @return * @return
*/ */
@PostMapping("/edit") @PutMapping("/edit")
Result edit(@RequestBody ApiSysProjectEditRequest request); Result edit(@Validated @RequestBody ApiSysProjectEditRequest request);
/** /**
* 删除项目(逻辑删除) * 删除项目(逻辑删除)
* @param projectUid 项目唯一标识(业务ID) * @param projectBizId 项目唯一标识(业务ID)
* @return * @return
*/ */
@DeleteMapping("/del") @DeleteMapping("/del")
Result del(@RequestParam(value = "projectUid") String projectUid); Result del(@RequestParam(value = "projectBizId") String projectBizId);
/** /**
* 编辑项目状态 * 编辑项目状态
* @param projectUid 项目唯一标识(业务ID) * @param projectBizId 项目唯一标识(业务ID)
* @param status 状态(0:禁用 1:启用) * @param status 状态(0:禁用 1:启用)
* @return * @return
*/ */
@DeleteMapping("/edit/status") @PatchMapping("/edit/status")
Result editStatus(@RequestParam(value = "projectUid") String projectUid, Result editStatus(@NotBlank(message = "项目唯一标识(业务ID)不能为空") @RequestParam(value = "projectBizId") String projectBizId,
@RequestParam(value = "status") Integer status); @NotNull(message = "状态不能为空") @RequestParam(value = "status") Integer status);
} }
...@@ -7,8 +7,12 @@ import com.yd.user.feign.request.sysrole.ApiSysRoleEditRequest; ...@@ -7,8 +7,12 @@ import com.yd.user.feign.request.sysrole.ApiSysRoleEditRequest;
import com.yd.user.feign.request.sysrole.ApiSysRolePageRequest; import com.yd.user.feign.request.sysrole.ApiSysRolePageRequest;
import com.yd.user.feign.response.sysrole.ApiSysRoleDetailResponse; import com.yd.user.feign.response.sysrole.ApiSysRoleDetailResponse;
import org.springframework.cloud.openfeign.FeignClient; import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
/** /**
* 用户服务-系统角色信息Feign客户端 * 用户服务-系统角色信息Feign客户端
*/ */
...@@ -25,11 +29,11 @@ public interface ApiSysRoleFeignClient { ...@@ -25,11 +29,11 @@ public interface ApiSysRoleFeignClient {
/** /**
* 获取角色详情 * 获取角色详情
* @param roleUid 角色唯一标识(业务ID) * @param roleBizId 角色唯一标识(业务ID)
* @return * @return
*/ */
@GetMapping("/detail") @GetMapping("/detail")
Result<ApiSysRoleDetailResponse> detail(@RequestParam(value = "roleUid") String roleUid); Result<ApiSysRoleDetailResponse> detail(@NotBlank(message = "角色唯一标识(业务ID)不能为空") @RequestParam(value = "roleBizId") String roleBizId);
/** /**
* 添加角色 * 添加角色
...@@ -37,32 +41,32 @@ public interface ApiSysRoleFeignClient { ...@@ -37,32 +41,32 @@ public interface ApiSysRoleFeignClient {
* @return * @return
*/ */
@PostMapping("/add") @PostMapping("/add")
Result add(@RequestBody ApiSysRoleAddRequest request); Result add(@Validated @RequestBody ApiSysRoleAddRequest request);
/** /**
* 编辑角色 * 编辑角色
* @param request * @param request
* @return * @return
*/ */
@PostMapping("/edit") @PutMapping("/edit")
Result edit(@RequestBody ApiSysRoleEditRequest request); Result edit(@Validated @RequestBody ApiSysRoleEditRequest request);
/** /**
* 删除角色(逻辑删除) * 删除角色(逻辑删除)
* @param roleUid 角色唯一标识(业务ID) * @param roleBizId 角色唯一标识(业务ID)
* @return * @return
*/ */
@DeleteMapping("/del") @DeleteMapping("/del")
Result del(@RequestParam(value = "roleUid") String roleUid); Result del(@RequestParam(value = "roleBizId") String roleBizId);
/** /**
* 编辑角色状态 * 编辑角色状态
* @param roleUid 角色唯一标识(业务ID) * @param roleBizId 角色唯一标识(业务ID)
* @param status 状态(0:禁用 1:启用) * @param status 状态(0:禁用 1:启用)
* @return * @return
*/ */
@DeleteMapping("/edit/status") @PatchMapping("/edit/status")
Result editStatus(@RequestParam(value = "roleUid") String roleUid, Result editStatus(@NotBlank(message = "角色唯一标识(业务ID)不能为空") @RequestParam(value = "roleBizId") String roleBizId,
@RequestParam(value = "status") Integer status); @NotNull(message = "状态不能为空") @RequestParam(value = "status") Integer status);
} }
...@@ -10,6 +10,7 @@ import org.springframework.cloud.openfeign.FeignClient; ...@@ -10,6 +10,7 @@ import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
/** /**
* 用户服务-系统租户信息Feign客户端 * 用户服务-系统租户信息Feign客户端
...@@ -27,11 +28,11 @@ public interface ApiSysTenantFeignClient { ...@@ -27,11 +28,11 @@ public interface ApiSysTenantFeignClient {
/** /**
* 获取租户详情 * 获取租户详情
* @param tenantUid 租户唯一标识(业务ID) * @param tenantBizId 租户唯一标识(业务ID)
* @return * @return
*/ */
@GetMapping("/detail") @GetMapping("/detail")
Result<ApiSysTenantDetailResponse> detail(@NotBlank(message = "租户唯一标识(业务ID)不能为空") @RequestParam(value = "tenantUid") String tenantUid); Result<ApiSysTenantDetailResponse> detail(@NotBlank(message = "租户唯一标识(业务ID)不能为空") @RequestParam(value = "tenantBizId") String tenantBizId);
/** /**
* 添加租户 * 添加租户
...@@ -46,25 +47,25 @@ public interface ApiSysTenantFeignClient { ...@@ -46,25 +47,25 @@ public interface ApiSysTenantFeignClient {
* @param request * @param request
* @return * @return
*/ */
@PostMapping("/edit") @PutMapping("/edit")
Result edit(@RequestBody ApiSysTenantEditRequest request); Result edit(@RequestBody ApiSysTenantEditRequest request);
/** /**
* 删除租户(逻辑删除) * 删除租户(逻辑删除)
* @param tenantUid 租户唯一标识(业务ID) * @param tenantBizId 租户唯一标识(业务ID)
* @return * @return
*/ */
@DeleteMapping("/del") @DeleteMapping("/del")
Result del(@RequestParam(value = "tenantUid") String tenantUid); Result del(@RequestParam(value = "tenantBizId") String tenantBizId);
/** /**
* 编辑租户状态 * 编辑租户状态
* @param tenantUid 租户唯一标识(业务ID) * @param tenantBizId 租户唯一标识(业务ID)
* @param status 状态(0:禁用 1:启用) * @param status 状态(0:禁用 1:启用)
* @return * @return
*/ */
@DeleteMapping("/edit/status") @PatchMapping("/edit/status")
Result editStatus(@RequestParam(value = "tenantUid") String tenantUid, Result editStatus(@NotBlank(message = "租户唯一标识(业务ID)不能为空") @RequestParam(value = "tenantBizId") String tenantBizId,
@RequestParam(value = "status") Integer status); @NotNull(message = "状态不能为空") @RequestParam(value = "status") Integer status);
} }
...@@ -3,14 +3,16 @@ package com.yd.user.feign.client.sysuser; ...@@ -3,14 +3,16 @@ package com.yd.user.feign.client.sysuser;
import com.yd.common.result.Result; import com.yd.common.result.Result;
import com.yd.user.feign.fallback.sysuser.ApiSysUserFeignFallbackFactory; import com.yd.user.feign.fallback.sysuser.ApiSysUserFeignFallbackFactory;
import com.yd.user.feign.request.sysuser.ApiSysUserAddRequest; import com.yd.user.feign.request.sysuser.ApiSysUserAddRequest;
import com.yd.user.feign.request.sysuser.ApiSysUserEditPwdRequest;
import com.yd.user.feign.request.sysuser.ApiSysUserEditRequest; import com.yd.user.feign.request.sysuser.ApiSysUserEditRequest;
import com.yd.user.feign.request.sysuser.ApiSysUserPageRequest; import com.yd.user.feign.request.sysuser.ApiSysUserPageRequest;
import com.yd.user.feign.response.sysuser.ApiSysUserDetailResponse; import com.yd.user.feign.response.sysuser.ApiSysUserDetailResponse;
import org.springframework.cloud.openfeign.FeignClient; import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam; import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
/** /**
* 用户服务-系统用户信息Feign客户端 * 用户服务-系统用户信息Feign客户端
...@@ -32,21 +34,38 @@ public interface ApiSysUserFeignClient { ...@@ -32,21 +34,38 @@ public interface ApiSysUserFeignClient {
* @return * @return
*/ */
@PostMapping("/add") @PostMapping("/add")
Result add(@RequestBody ApiSysUserAddRequest request); Result add(@Validated @RequestBody ApiSysUserAddRequest request);
/** /**
* 编辑用户 * 编辑用户
* @param request * @param request
* @return * @return
*/ */
@PostMapping("/edit") @PutMapping("/edit")
Result edit(@RequestBody ApiSysUserEditRequest request); Result edit(@Validated @RequestBody ApiSysUserEditRequest request);
/** /**
* 获取用户详情 * 获取用户详情
* @param userUid 用户业务唯一标识id * @param userBizId 用户业务唯一标识id
* @return * @return
*/ */
@GetMapping("/detail") @GetMapping("/detail")
Result<ApiSysUserDetailResponse> detail(@RequestParam(value = "userUid") String userUid); Result<ApiSysUserDetailResponse> detail(@NotBlank(message = "用户业务唯一标识id不能为空") @RequestParam(value = "userBizId") String userBizId);
/**
* 编辑用户状态
* @param userBizId
* @param status
* @return
*/
@PatchMapping("/edit/status")
Result editStatus(@NotBlank(message = "用户唯一标识(业务ID)不能为空") @RequestParam(value = "userBizId") String userBizId,
@NotNull(message = "状态不能为空") @RequestParam(value = "status") Integer status);
/**
* 编辑用户密码
* @return
*/
@PostMapping("/edit/pwd")
Result editPwd(@Validated @RequestBody ApiSysUserEditPwdRequest request);
} }
package com.yd.user.feign.fallback.relprojectrole;public class ApiRelProjectRoleFeignFallbackFactory { package com.yd.user.feign.fallback.relprojectrole;
import com.yd.common.result.Result;
import com.yd.user.feign.client.relprojectrole.ApiRelProjectRoleFeignClient;
import com.yd.user.feign.request.relprojectrole.ApiRelProjectRoleListAddRequest;
import com.yd.user.feign.request.relprojectrole.ApiRelProjectRoleListPageRequest;
import com.yd.user.feign.request.relprojectrole.ApiRelProjectRoleSelectPageRequest;
import lombok.extern.slf4j.Slf4j;
import org.springframework.cloud.openfeign.FallbackFactory;
import org.springframework.stereotype.Component;
/**
* 用户服务:项目-角色关系信息Feign降级处理
*/
@Slf4j
@Component
public class ApiRelProjectRoleFeignFallbackFactory implements FallbackFactory<ApiRelProjectRoleFeignClient> {
@Override
public ApiRelProjectRoleFeignClient create(Throwable cause) {
return new ApiRelProjectRoleFeignClient() {
@Override
public Result page(ApiRelProjectRoleListPageRequest request) {
return null;
}
@Override
public Result addRoleList(ApiRelProjectRoleListAddRequest request) {
return null;
}
@Override
public Result del(Long id) {
return null;
}
@Override
public Result selectRolePage(ApiRelProjectRoleSelectPageRequest request) {
return null;
}
};
}
} }
package com.yd.user.feign.fallback.relprojectuser;public class ApiRelProjectUserFeignFallbackFactory { package com.yd.user.feign.fallback.relprojectuser;
import com.yd.common.result.Result;
import com.yd.user.feign.client.relprojectuser.ApiRelProjectUserFeignClient;
import com.yd.user.feign.request.relprojectuser.ApiRelProjectUserListAddRequest;
import com.yd.user.feign.request.relprojectuser.ApiRelProjectUserListPageRequest;
import com.yd.user.feign.request.relprojectuser.ApiRelProjectUserSelectPageRequest;
import lombok.extern.slf4j.Slf4j;
import org.springframework.cloud.openfeign.FallbackFactory;
import org.springframework.stereotype.Component;
/**
* 用户服务:项目-用户关系信息Feign降级处理
*/
@Slf4j
@Component
public class ApiRelProjectUserFeignFallbackFactory implements FallbackFactory<ApiRelProjectUserFeignClient> {
@Override
public ApiRelProjectUserFeignClient create(Throwable cause) {
return new ApiRelProjectUserFeignClient() {
@Override
public Result page(ApiRelProjectUserListPageRequest request) {
return null;
}
@Override
public Result addUserList(ApiRelProjectUserListAddRequest request) {
return null;
}
@Override
public Result del(Long id) {
return null;
}
@Override
public Result selectUserPage(ApiRelProjectUserSelectPageRequest request) {
return null;
}
};
}
} }
package com.yd.user.feign.fallback.reltenantmenu;public class ApiRelTenantMenuFeignFallbackFactory { package com.yd.user.feign.fallback.reltenantmenu;
import com.yd.common.result.Result;
import com.yd.user.feign.client.reltenantmenu.ApiRelTenantMenuFeignClient;
import com.yd.user.feign.request.reltenantmenu.ApiRelTenantMenuListAddRequest;
import com.yd.user.feign.request.reltenantmenu.ApiRelTenantMenuListPageRequest;
import com.yd.user.feign.request.reltenantmenu.ApiRelTenantMenuSelectPageRequest;
import lombok.extern.slf4j.Slf4j;
import org.springframework.cloud.openfeign.FallbackFactory;
import org.springframework.stereotype.Component;
/**
* 用户服务:租户-菜单关系信息Feign降级处理
*/
@Slf4j
@Component
public class ApiRelTenantMenuFeignFallbackFactory implements FallbackFactory<ApiRelTenantMenuFeignClient> {
@Override
public ApiRelTenantMenuFeignClient create(Throwable cause) {
return new ApiRelTenantMenuFeignClient() {
@Override
public Result page(ApiRelTenantMenuListPageRequest request) {
return null;
}
@Override
public Result addMenuList(ApiRelTenantMenuListAddRequest request) {
return null;
}
@Override
public Result del(Long id) {
return null;
}
@Override
public Result selectMenuPage(ApiRelTenantMenuSelectPageRequest request) {
return null;
}
};
}
} }
package com.yd.user.feign.fallback.reltenantproject;public class ApiRelTenantProjectFeignFallbackFactory { package com.yd.user.feign.fallback.reltenantproject;
import com.yd.common.result.Result;
import com.yd.user.feign.client.reltenantproject.ApiRelTenantProjectFeignClient;
import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectListAddRequest;
import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectListPageRequest;
import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectSelectPageRequest;
import lombok.extern.slf4j.Slf4j;
import org.springframework.cloud.openfeign.FallbackFactory;
import org.springframework.stereotype.Component;
/**
* 用户服务:租户-项目关系信息Feign降级处理
*/
@Slf4j
@Component
public class ApiRelTenantProjectFeignFallbackFactory implements FallbackFactory<ApiRelTenantProjectFeignClient> {
@Override
public ApiRelTenantProjectFeignClient create(Throwable cause) {
return new ApiRelTenantProjectFeignClient() {
@Override
public Result page(ApiRelTenantProjectListPageRequest request) {
return null;
}
@Override
public Result addProjectList(ApiRelTenantProjectListAddRequest request) {
return null;
}
@Override
public Result del(Long id) {
return null;
}
@Override
public Result selectProjectPage(ApiRelTenantProjectSelectPageRequest request) {
return null;
}
};
}
} }
package com.yd.user.feign.fallback.reltenantrole;public class ApiRelTenantRoleFeignFallbackFactory { package com.yd.user.feign.fallback.reltenantrole;
import com.yd.common.result.Result;
import com.yd.user.feign.client.reltenantrole.ApiRelTenantRoleFeignClient;
import com.yd.user.feign.request.reltenantrole.ApiRelTenantRoleListAddRequest;
import com.yd.user.feign.request.reltenantrole.ApiRelTenantRoleListPageRequest;
import com.yd.user.feign.request.reltenantrole.ApiRelTenantRoleSelectPageRequest;
import lombok.extern.slf4j.Slf4j;
import org.springframework.cloud.openfeign.FallbackFactory;
import org.springframework.stereotype.Component;
import javax.validation.constraints.NotNull;
/**
* 用户服务:租户-角色关系信息Feign降级处理
*/
@Slf4j
@Component
public class ApiRelTenantRoleFeignFallbackFactory implements FallbackFactory<ApiRelTenantRoleFeignClient> {
@Override
public ApiRelTenantRoleFeignClient create(Throwable cause) {
return new ApiRelTenantRoleFeignClient() {
@Override
public Result page(ApiRelTenantRoleListPageRequest request) {
return null;
}
@Override
public Result addRoleList(ApiRelTenantRoleListAddRequest request) {
return null;
}
@Override
public Result del(Long id) {
return null;
}
@Override
public Result selectRolePage(ApiRelTenantRoleSelectPageRequest request) {
return null;
}
};
}
} }
package com.yd.user.feign.fallback.reltenantuser;public class ApiRelTenantUserFeignFallbackFactory { package com.yd.user.feign.fallback.reltenantuser;
import com.yd.common.result.Result;
import com.yd.user.feign.client.reltenantuser.ApiRelTenantUserFeignClient;
import com.yd.user.feign.request.reltenantuser.ApiRelTenantUserListAddRequest;
import com.yd.user.feign.request.reltenantuser.ApiRelTenantUserListPageRequest;
import com.yd.user.feign.request.reltenantuser.ApiRelTenantUserSelectPageRequest;
import lombok.extern.slf4j.Slf4j;
import org.springframework.cloud.openfeign.FallbackFactory;
import org.springframework.stereotype.Component;
/**
* 用户服务:租户-用户关系信息Feign降级处理
*/
@Slf4j
@Component
public class ApiRelTenantUserFeignFallbackFactory implements FallbackFactory<ApiRelTenantUserFeignClient> {
@Override
public ApiRelTenantUserFeignClient create(Throwable cause) {
return new ApiRelTenantUserFeignClient() {
@Override
public Result page(ApiRelTenantUserListPageRequest request) {
return null;
}
@Override
public Result addUserList(ApiRelTenantUserListAddRequest request) {
return null;
}
@Override
public Result del(Long id) {
return null;
}
@Override
public Result selectUserPage(ApiRelTenantUserSelectPageRequest request) {
return null;
}
};
}
} }
package com.yd.user.feign.fallback.reluserrole;public class ApiRelUserRoleFeignFallbackFactory { package com.yd.user.feign.fallback.reluserrole;
import com.yd.common.result.Result;
import com.yd.user.feign.client.reluserrole.ApiRelUserRoleFeignClient;
import com.yd.user.feign.request.reluserrole.ApiProjectUserRoleListAddRequest;
import com.yd.user.feign.request.reluserrole.ApiTenantUserRoleListAddRequest;
import com.yd.user.feign.response.reluserrole.ApiSelectedTenantUserRoleListResponse;
import lombok.extern.slf4j.Slf4j;
import org.springframework.cloud.openfeign.FallbackFactory;
import org.springframework.stereotype.Component;
import javax.validation.constraints.NotBlank;
import java.util.List;
/**
* 用户服务:用户-角色关系信息Feign降级处理
*/
@Slf4j
@Component
public class ApiRelUserRoleFeignFallbackFactory implements FallbackFactory<ApiRelUserRoleFeignClient> {
@Override
public ApiRelUserRoleFeignClient create(Throwable cause) {
return new ApiRelUserRoleFeignClient() {
@Override
public Result addTenantUserRoleList(ApiTenantUserRoleListAddRequest request) {
return null;
}
@Override
public Result<List<ApiSelectedTenantUserRoleListResponse>> selectedTenantUserRoleList(String tenantBizId, String userBizId) {
return null;
}
@Override
public Result addProjectUserRoleList(ApiProjectUserRoleListAddRequest request) {
return null;
}
@Override
public Result selectedProjectUserRoleList(String projectBizId,String userBizId) {
return null;
}
};
}
} }
package com.yd.user.feign.fallback.sysmenu;public class ApiSysMenuFeignFallbackFactory { package com.yd.user.feign.fallback.sysmenu;
import com.yd.common.result.Result;
import com.yd.user.feign.client.sysmenu.ApiSysMenuFeignClient;
import com.yd.user.feign.request.sysmenu.ApiSysMenuAddRequest;
import com.yd.user.feign.request.sysmenu.ApiSysMenuEditRequest;
import com.yd.user.feign.request.sysmenu.ApiSysMenuPageRequest;
import com.yd.user.feign.request.sysmenu.ApiSysMenuTreeListRequest;
import com.yd.user.feign.response.sysmenu.ApiSysMenuDetailResponse;
import com.yd.user.feign.response.sysmenu.ApiSysMenuTreeListResponse;
import lombok.extern.slf4j.Slf4j;
import org.springframework.cloud.openfeign.FallbackFactory;
import org.springframework.stereotype.Component;
import java.util.List;
/**
* 用户服务:菜单关系信息Feign降级处理
*/
@Slf4j
@Component
public class ApiSysMenuFeignFallbackFactory implements FallbackFactory<ApiSysMenuFeignClient> {
@Override
public ApiSysMenuFeignClient create(Throwable cause) {
return new ApiSysMenuFeignClient() {
@Override
public Result<List<ApiSysMenuTreeListResponse>> treeList(ApiSysMenuTreeListRequest request) {
return null;
}
@Override
public Result page(ApiSysMenuPageRequest request) {
return null;
}
@Override
public Result<ApiSysMenuDetailResponse> detail(String menuBizId) {
return null;
}
@Override
public Result add(ApiSysMenuAddRequest request) {
return null;
}
@Override
public Result edit(ApiSysMenuEditRequest request) {
return null;
}
@Override
public Result del(String menuBizId) {
return null;
}
@Override
public Result editStatus(String menuBizId,Integer status) {
return null;
}
};
}
} }
...@@ -25,7 +25,7 @@ public class ApiSysProjectFeignFallbackFactory implements FallbackFactory<ApiSys ...@@ -25,7 +25,7 @@ public class ApiSysProjectFeignFallbackFactory implements FallbackFactory<ApiSys
} }
@Override @Override
public Result<ApiSysProjectDetailResponse> detail(String projectUid) { public Result<ApiSysProjectDetailResponse> detail(String projectBizId) {
return null; return null;
} }
...@@ -40,12 +40,12 @@ public class ApiSysProjectFeignFallbackFactory implements FallbackFactory<ApiSys ...@@ -40,12 +40,12 @@ public class ApiSysProjectFeignFallbackFactory implements FallbackFactory<ApiSys
} }
@Override @Override
public Result del(String projectUid) { public Result del(String projectBizId) {
return null; return null;
} }
@Override @Override
public Result editStatus(String projectUid, Integer status) { public Result editStatus(String projectBizId, Integer status) {
return null; return null;
} }
}; };
......
...@@ -25,7 +25,7 @@ public class ApiSysRoleFeignFallbackFactory implements FallbackFactory<ApiSysRol ...@@ -25,7 +25,7 @@ public class ApiSysRoleFeignFallbackFactory implements FallbackFactory<ApiSysRol
} }
@Override @Override
public Result<ApiSysRoleDetailResponse> detail(String roleUid) { public Result<ApiSysRoleDetailResponse> detail(String roleBizId) {
return null; return null;
} }
...@@ -40,12 +40,12 @@ public class ApiSysRoleFeignFallbackFactory implements FallbackFactory<ApiSysRol ...@@ -40,12 +40,12 @@ public class ApiSysRoleFeignFallbackFactory implements FallbackFactory<ApiSysRol
} }
@Override @Override
public Result del(String roleUid) { public Result del(String roleBizId) {
return null; return null;
} }
@Override @Override
public Result editStatus(String roleUid, Integer status) { public Result editStatus(String roleBizId, Integer status) {
return null; return null;
} }
}; };
......
...@@ -25,7 +25,7 @@ public class ApiSysTenantFeignFallbackFactory implements FallbackFactory<ApiSysT ...@@ -25,7 +25,7 @@ public class ApiSysTenantFeignFallbackFactory implements FallbackFactory<ApiSysT
} }
@Override @Override
public Result<ApiSysTenantDetailResponse> detail(String tenantUid) { public Result<ApiSysTenantDetailResponse> detail(String tenantBizId) {
return null; return null;
} }
...@@ -40,12 +40,12 @@ public class ApiSysTenantFeignFallbackFactory implements FallbackFactory<ApiSysT ...@@ -40,12 +40,12 @@ public class ApiSysTenantFeignFallbackFactory implements FallbackFactory<ApiSysT
} }
@Override @Override
public Result del(String tenantUid) { public Result del(String tenantBizId) {
return null; return null;
} }
@Override @Override
public Result editStatus(String tenantUid, Integer status) { public Result editStatus(String tenantBizId, Integer status) {
return null; return null;
} }
}; };
......
...@@ -40,7 +40,7 @@ public class ApiSysUserFeignFallbackFactory implements FallbackFactory<ApiSysUse ...@@ -40,7 +40,7 @@ public class ApiSysUserFeignFallbackFactory implements FallbackFactory<ApiSysUse
} }
@Override @Override
public Result<ApiSysUserDetailResponse> detail(String userUid) { public Result<ApiSysUserDetailResponse> detail(String userBizId) {
log.error("获取用户信息失败: {}", cause.getMessage()); log.error("获取用户信息失败: {}", cause.getMessage());
throw new BusinessException("获取用户信息失败,请稍后重试"); throw new BusinessException("获取用户信息失败,请稍后重试");
} }
......
package com.yd.user.feign.request.relprojectrole;public class ApiRelProjectRoleListAddRequest { package com.yd.user.feign.request.relprojectrole;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;
import java.util.List;
/**
* 添加项目和角色列表关系入参
*/
@Data
public class ApiRelProjectRoleListAddRequest {
/**
* 项目唯一标识(业务ID)
*/
@NotBlank(message = "项目唯一标识(业务ID)不能为空")
private String projectBizId;
/**
* 角色唯一标识(业务ID) 列表(选中列表)
*/
@NotEmpty(message = "角色唯一标识(业务ID) 列表(选中列表)不能为空")
private List<String> roleBizIdList;
} }
package com.yd.user.feign.request.relprojectrole;public class ApiRelProjectRoleListPageRequest { package com.yd.user.feign.request.relprojectrole;
import com.yd.common.dto.PageDto;
import lombok.Data;
import javax.validation.constraints.NotBlank;
/**
* 项目和角色关系分页查询入参
*/
@Data
public class ApiRelProjectRoleListPageRequest extends PageDto {
/**
* 项目唯一标识(业务ID)
*/
@NotBlank(message = "项目唯一标识(业务ID)不能为空")
private String projectBizId;
/**
* 角色名称
*/
private String roleName;
} }
package com.yd.user.feign.request.relprojectrole;public class ApiRelProjectRoleSelectPageRequest { package com.yd.user.feign.request.relprojectrole;
import com.yd.common.dto.PageDto;
import lombok.Data;
import javax.validation.constraints.NotBlank;
/**
* 导入-选择角色分页查询(查询当前项目级(当前所属项目绑定的角色)或者系统级(全局角色在任何地方都适用导入绑定)的角色表数据)入参
*/
@Data
public class ApiRelProjectRoleSelectPageRequest extends PageDto {
/**
* 项目唯一标识(业务ID)
*/
@NotBlank(message = "项目唯一标识(业务ID)不能为空")
private String projectBizId;
/**
* 角色名称
*/
private String roleName;
} }
package com.yd.user.feign.request.relprojectuser;public class ApiRelProjectUserListAddRequest { package com.yd.user.feign.request.relprojectuser;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;
import java.util.List;
/**
* 添加项目和用户列表关系入参
*/
@Data
public class ApiRelProjectUserListAddRequest {
/**
* 项目ID(业务id)
*/
@NotBlank(message = "项目ID(业务id)不能为空")
private String projectBizId;
/**
* 选择的用户ID(业务id)列表
*/
@NotEmpty(message = "选择的用户ID(业务id)列表不能为空")
private List<String> userBizIdList;
} }
package com.yd.user.feign.request.relprojectuser;public class ApiRelProjectUserListPageRequest { package com.yd.user.feign.request.relprojectuser;
import com.yd.common.dto.PageDto;
import lombok.Data;
import javax.validation.constraints.NotBlank;
/**
* 项目和用户关系分页查询入参
*/
@Data
public class ApiRelProjectUserListPageRequest extends PageDto {
/**
* 项目唯一标识(业务ID)
*/
@NotBlank(message = "项目唯一标识(业务ID)不能为空")
private String projectBizId;
/**
* 登录账号
*/
private String userName;
/**
* 真实姓名
*/
private String realName;
/**
* 手机号
*/
private String mobile;
} }
package com.yd.user.feign.request.relprojectuser;public class ApiRelProjectUserSelectPageRequest { package com.yd.user.feign.request.relprojectuser;
import com.yd.common.dto.PageDto;
import lombok.Data;
import javax.validation.constraints.NotBlank;
/**
* 导入-选择用户分页查询(查询用户库的用户id不在当前项目用户关系的用户id列表中的数据)入参
*/
@Data
public class ApiRelProjectUserSelectPageRequest extends PageDto {
/**
* 项目唯一标识(业务ID)
*/
@NotBlank(message = "项目唯一标识(业务ID)不能为空")
private String projectBizId;
/**
* 登录账号
*/
private String userName;
/**
* 真实姓名
*/
private String realName;
/**
* 手机号
*/
private String mobile;
} }
package com.yd.user.feign.request.reltenantmenu;public class ApiRelTenantMenuListAddRequest { package com.yd.user.feign.request.reltenantmenu;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;
import java.util.List;
/**
* 添加租户和菜单列表关系入参
*/
@Data
public class ApiRelTenantMenuListAddRequest {
/**
* 租户唯一标识(业务ID)
*/
@NotBlank(message = "租户唯一标识(业务ID)不能为空")
private String tenantBizId;
/**
* 菜单唯一标识(业务ID) 列表(选中列表)
*/
@NotEmpty(message = "菜单唯一标识(业务ID) 列表(选中列表)不能为空")
private List<String> menuBizIdList;
} }
package com.yd.user.feign.request.reltenantmenu;public class ApiRelTenantMenuListPageRequest { package com.yd.user.feign.request.reltenantmenu;
import com.yd.common.dto.PageDto;
import lombok.Data;
import javax.validation.constraints.NotBlank;
/**
* 租户和菜单关系分页查询入参
*/
@Data
public class ApiRelTenantMenuListPageRequest extends PageDto {
/**
* 租户唯一标识(业务ID)
*/
@NotBlank(message = "租户唯一标识(业务ID)不能为空")
private String tenantBizId;
/**
* 菜单名称
*/
private String menuName;
} }
package com.yd.user.feign.request.reltenantmenu;public class ApiRelTenantMenuSelectPageRequest { package com.yd.user.feign.request.reltenantmenu;
import com.yd.common.dto.PageDto;
import lombok.Data;
/**
* 导入-选择菜单分页查询(查询当前租户级(当前所属租户绑定的菜单)或者系统级(全局菜单在任何地方都适用导入绑定)的菜单表数据)入参
*/
@Data
public class ApiRelTenantMenuSelectPageRequest extends PageDto {
} }
package com.yd.user.feign.request.reltenantproject;public class ApiRelTenantProjectListAddRequest { package com.yd.user.feign.request.reltenantproject;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;
import java.util.List;
/**
* 添加租户和项目列表关系入参
*/
@Data
public class ApiRelTenantProjectListAddRequest {
/**
* 租户唯一标识(业务ID)
*/
@NotBlank(message = "租户唯一标识(业务ID)不能为空")
private String tenantBizId;
/**
* 项目唯一标识(业务ID) 列表(选中列表)
*/
@NotEmpty(message = "项目唯一标识(业务ID) 列表(选中列表)不能为空")
private List<String> projectBizIdList;
} }
package com.yd.user.feign.request.reltenantproject;public class ApiRelTenantProjectListPageRequest { package com.yd.user.feign.request.reltenantproject;
import com.yd.common.dto.PageDto;
import lombok.Data;
import javax.validation.constraints.NotBlank;
/**
* 租户和项目关系分页查询入参
*/
@Data
public class ApiRelTenantProjectListPageRequest extends PageDto {
/**
* 租户唯一标识(业务ID)
*/
@NotBlank(message = "租户唯一标识(业务ID)不能为空")
private String tenantBizId;
/**
* 项目名称
*/
private String projectName;
} }
package com.yd.user.feign.request.reltenantproject;public class ApiRelTenantProjectSelectPageRequest { package com.yd.user.feign.request.reltenantproject;
import com.yd.common.dto.PageDto;
import lombok.Data;
import javax.validation.constraints.NotBlank;
/**
* 导入-选择项目分页查询入参
*/
@Data
public class ApiRelTenantProjectSelectPageRequest extends PageDto {
/**
* 租户唯一标识(业务ID)
*/
@NotBlank(message = "租户唯一标识(业务ID)不能为空")
private String tenantBizId;
/**
* 项目名称
*/
private String projectName;
} }
package com.yd.user.feign.request.reltenantrole;public class ApiRelTenantRoleListAddRequest { package com.yd.user.feign.request.reltenantrole;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;
import java.util.List;
/**
* 添加租户和角色列表关系入参
*/
@Data
public class ApiRelTenantRoleListAddRequest {
/**
* 租户唯一标识(业务ID)
*/
@NotBlank(message = "租户唯一标识(业务ID)不能为空")
private String tenantBizId;
/**
* 角色唯一标识(业务ID) 列表(选中列表)
*/
@NotEmpty(message = "角色唯一标识(业务ID) 列表(选中列表)不能为空")
private List<String> roleBizIdList;
} }
package com.yd.user.feign.request.reltenantrole;public class ApiRelTenantRoleListPageRequest { package com.yd.user.feign.request.reltenantrole;
import com.yd.common.dto.PageDto;
import lombok.Data;
import javax.validation.constraints.NotBlank;
/**
* 租户和角色关系分页查询入参
*/
@Data
public class ApiRelTenantRoleListPageRequest extends PageDto {
/**
* 租户唯一标识(业务ID)
*/
@NotBlank(message = "租户唯一标识(业务ID)不能为空")
private String tenantBizId;
/**
* 角色名称
*/
private String roleName;
} }
package com.yd.user.feign.request.reltenantrole; package com.yd.user.feign.request.reltenantrole;
public class ApiRelTenantRoleSelectPageRequest { import com.yd.common.dto.PageDto;
import lombok.Data;
import javax.validation.constraints.NotBlank;
@Data
public class ApiRelTenantRoleSelectPageRequest extends PageDto {
/**
* 租户唯一标识(业务ID)
*/
@NotBlank(message = "租户唯一标识(业务ID)不能为空")
private String tenantBizId;
/**
* 角色名称
*/
private String roleName;
} }
package com.yd.user.feign.request.reltenantuser;public class ApiRelTenantUserListAddRequest { package com.yd.user.feign.request.reltenantuser;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;
import java.util.List;
/**
* 添加租户和用户列表关系入参
*/
@Data
public class ApiRelTenantUserListAddRequest {
/**
* 租户ID(业务id)
*/
@NotBlank(message = "租户ID(业务id)不能为空")
private String tenantBizId;
/**
* 选择的用户ID(业务id)列表
*/
@NotEmpty(message = "选择的用户ID(业务id)列表不能为空")
private List<String> userBizIdList;
} }
package com.yd.user.feign.request.reltenantuser;public class ApiRelTenantUserListPageRequest { package com.yd.user.feign.request.reltenantuser;
import com.yd.common.dto.PageDto;
import lombok.Data;
import javax.validation.constraints.NotBlank;
/**
* 租户和用户关系分页查询入参
*/
@Data
public class ApiRelTenantUserListPageRequest extends PageDto {
/**
* 租户唯一标识(业务ID)
*/
@NotBlank(message = "租户唯一标识(业务ID)不能为空")
private String tenantBizId;
/**
* 登录账号
*/
private String userName;
/**
* 真实姓名
*/
private String realName;
/**
* 手机号
*/
private String mobile;
} }
package com.yd.user.feign.request.reltenantuser;public class ApiRelTenantUserSelectPageRequest { package com.yd.user.feign.request.reltenantuser;
import com.yd.common.dto.PageDto;
import lombok.Data;
import javax.validation.constraints.NotBlank;
/**
* 导入-选择用户分页查询(查询用户库的用户id不在当前租户用户关系的用户id列表中的数据)入参
*/
@Data
public class ApiRelTenantUserSelectPageRequest extends PageDto {
/**
* 租户唯一标识(业务ID)
*/
@NotBlank(message = "租户唯一标识(业务ID)不能为空")
private String tenantBizId;
/**
* 登录账号
*/
private String userName;
/**
* 真实姓名
*/
private String realName;
/**
* 手机号
*/
private String mobile;
} }
package com.yd.user.feign.request.reluserrole;public class ApiProjectUserRoleListAddRequest { package com.yd.user.feign.request.reluserrole;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;
import java.util.List;
/**
* 项目管理-用户配置-权限配置-添加用户角色列表关系入参
*/
@Data
public class ApiProjectUserRoleListAddRequest {
/**
* 项目ID(业务id)
*/
@NotBlank(message = "项目ID(业务id)不能为空")
private String projectBizId;
/**
* 用户ID(业务id)
*/
@NotBlank(message = "用户ID(业务id)不能为空")
private String userBizId;
/**
* 选择的角色ID(业务id)列表
*/
@NotEmpty(message = "选择的角色ID(业务id)列表不能为空")
private List<String> roleBizIdList;
} }
package com.yd.user.feign.request.reluserrole;public class ApiTenantUserRoleListAddRequest { package com.yd.user.feign.request.reluserrole;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;
import java.util.List;
/**
* 租户管理-添加用户角色列表关系
*/
@Data
public class ApiTenantUserRoleListAddRequest {
/**
* 租户ID(业务id)
*/
@NotBlank(message = "租户ID(业务id)不能为空")
private String tenantBizId;
/**
* 用户ID(业务id)
*/
@NotBlank(message = "用户ID(业务id)不能为空")
private String userBizId;
/**
* 选择的角色ID(业务id)列表
*/
@NotEmpty(message = "选择的角色ID(业务id)列表不能为空")
private List<String> roleBizIdList;
} }
package com.yd.user.feign.request.sysmenu;public class ApiSysMenuAddRequest { package com.yd.user.feign.request.sysmenu;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
/**
* 添加菜单入参
*/
@Data
public class ApiSysMenuAddRequest {
/**
* 父菜单ID
*/
@NotNull(message = "父菜单ID不能为空")
private String parentBizId;
/**
* 菜单名称
*/
@NotBlank(message = "菜单名称不能为空")
private String menuName;
/**
* 类型(1:目录 2:菜单 3:按钮)
*/
@NotNull(message = "类型不能为空")
private Integer menuType;
/**
* 路由地址
*/
private String path;
/**
* 组件路径
*/
private String component;
/**
* 图标
*/
private String icon;
/**
* 是否外链(0:否 1:是)
*/
private Integer isExternal;
/**
* 是否缓存(0:否 1:是)
*/
private Integer isCache;
/**
* 是否显示(0:隐藏 1:显示)
*/
private Integer isVisible;
/**
* 权限标识(如:user:add)
*/
private String permission;
/**
* 显示顺序
*/
@NotNull(message = "显示顺序不能为空")
private Integer orderNum;
/**
* 状态(0:停用 1:启用)
*/
@NotNull(message = "状态不能为空")
private Integer status;
/**
* 作用域(1:系统级(全局) 2:租户级 3:项目级)
*/
@NotNull(message = "作用域不能为空")
private Integer scope;
/**
* 所属租户ID(业务id)
*/
private String tenantBizId;
/**
* 所属项目ID(业务id)
*/
private String projectBizId;
} }
package com.yd.user.feign.request.sysmenu;public class ApiSysMenuEditRequest { package com.yd.user.feign.request.sysmenu;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
/**
* 编辑菜单入参
*/
@Data
public class ApiSysMenuEditRequest {
/**
* 菜单表主键id
*/
@NotNull(message = "菜单表主键id不能为空")
private Long id;
/**
* 菜单唯一标识(业务ID)
*/
@NotBlank(message = "菜单唯一标识(业务ID)不能为空")
private String menuBizId;
/**
* 父菜单ID
*/
@NotNull(message = "父菜单ID不能为空")
private String parentBizId;
/**
* 菜单名称
*/
@NotBlank(message = "菜单名称不能为空")
private String menuName;
/**
* 类型(1:目录 2:菜单 3:按钮)
*/
@NotNull(message = "类型不能为空")
private Integer menuType;
/**
* 路由地址
*/
private String path;
/**
* 组件路径
*/
private String component;
/**
* 图标
*/
private String icon;
/**
* 是否外链(0:否 1:是)
*/
private Integer isExternal;
/**
* 是否缓存(0:否 1:是)
*/
private Integer isCache;
/**
* 是否显示(0:隐藏 1:显示)
*/
private Integer isVisible;
/**
* 权限标识(如:user:add)
*/
private String permission;
/**
* 显示顺序
*/
@NotNull(message = "显示顺序不能为空")
private Integer orderNum;
/**
* 状态(0:停用 1:启用)
*/
@NotNull(message = "状态不能为空")
private Integer status;
/**
* 作用域(1:系统级(全局) 2:租户级 3:项目级)
*/
@NotNull(message = "作用域不能为空")
private Integer scope;
/**
* 所属租户ID(业务id)
*/
private String tenantBizId;
/**
* 所属项目ID(业务id)
*/
private String projectBizId;
} }
package com.yd.user.feign.request.sysmenu;public class ApiSysMenuPageRequest { package com.yd.user.feign.request.sysmenu;
import com.yd.common.dto.PageDto;
import lombok.Data;
/**
* 菜单分页查询入参
*/
@Data
public class ApiSysMenuPageRequest extends PageDto {
} }
package com.yd.user.feign.request.sysmenu;public class ApiSysMenuTreeListRequest { package com.yd.user.feign.request.sysmenu;
import lombok.Data;
/**
* 树形菜单列表查询入参
*/
@Data
public class ApiSysMenuTreeListRequest {
} }
package com.yd.user.feign.request.sysproject; package com.yd.user.feign.request.sysproject;
import lombok.Data; import lombok.Data;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.time.LocalDateTime;
/** /**
* 添加项目-入参 * 添加项目-入参
*/ */
@Data @Data
public class ApiSysProjectAddRequest { public class ApiSysProjectAddRequest {
/**
* 项目名称
*/
@NotBlank(message = "项目名称不能为空")
private String projectName;
/**
* 项目描述
*/
private String description;
/**
* 状态(0:禁用 1:启用)
*/
@NotNull(message = "状态不能为空")
private Integer status;
/**
* 项目开始时间
*/
private LocalDateTime startTime;
/**
* 项目结束时间
*/
private LocalDateTime endTime;
/**
* 作用域(1:系统级(全局) 2:租户级 )
*/
@NotNull(message = "作用域不能为空")
private Integer scope;
/**
* 所属租户ID(业务id)
*/
private String tenantBizId;
} }
...@@ -2,9 +2,63 @@ package com.yd.user.feign.request.sysproject; ...@@ -2,9 +2,63 @@ package com.yd.user.feign.request.sysproject;
import lombok.Data; import lombok.Data;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.time.LocalDateTime;
/** /**
* 编辑项目-入参 * 编辑项目-入参
*/ */
@Data @Data
public class ApiSysProjectEditRequest { public class ApiSysProjectEditRequest {
/**
* 项目主键id
*/
@NotNull(message = "项目主键id不能为空")
private Long id;
/**
* 项目唯一标识(业务ID)
*/
@NotBlank(message = "项目唯一标识(业务ID)不能为空")
private String projectBizId;
/**
* 项目名称
*/
@NotBlank(message = "项目名称不能为空")
private String projectName;
/**
* 项目描述
*/
private String description;
/**
* 状态(0:禁用 1:启用)
*/
@NotNull(message = "状态不能为空")
private Integer status;
/**
* 项目开始时间
*/
private LocalDateTime startTime;
/**
* 项目结束时间
*/
private LocalDateTime endTime;
/**
* 作用域(1:系统级(全局) 2:租户级 )
*/
@NotNull(message = "作用域不能为空")
private Integer scope;
/**
* 所属租户ID(业务id)
*/
private String tenantBizId;
} }
package com.yd.user.feign.request.sysproject; package com.yd.user.feign.request.sysproject;
import com.yd.common.dto.PageDto;
import lombok.Data; import lombok.Data;
/** /**
* 项目分页查询-入参 * 项目分页查询入参
*/ */
@Data @Data
public class ApiSysProjectPageRequest { public class ApiSysProjectPageRequest extends PageDto {
/**
* 项目名称
*/
private String projectName;
/**
* 状态(0:禁用 1:启用)
*/
private Integer status;
} }
...@@ -2,9 +2,56 @@ package com.yd.user.feign.request.sysrole; ...@@ -2,9 +2,56 @@ package com.yd.user.feign.request.sysrole;
import lombok.Data; import lombok.Data;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
/** /**
* 添加角色-入参 * 添加角色-入参
*/ */
@Data @Data
public class ApiSysRoleAddRequest { public class ApiSysRoleAddRequest {
/**
* 角色名称
*/
@NotBlank(message = "角色名称不能为空")
private String roleName;
/**
* 角色权限字符串(用于安全认证访问控制)
*/
private String roleKey;
/**
* 角色类型(1:超级管理员 2:管理员 3:普通用户)
*/
private Integer roleType;
/**
* 描述
*/
private String description;
/**
* 状态(0:停用 1:启用)
*/
@NotNull(message = "状态不能为空")
private Integer status;
/**
* 作用域(1:系统级(全局) 2:租户级 3:项目级)
*/
@NotNull(message = "作用域不能为空")
private Integer scope;
/**
* 所属租户ID(业务id)
*/
private String tenantBizId;
/**
* 所属项目ID(业务id)
*/
private String projectBizId;
} }
...@@ -2,9 +2,64 @@ package com.yd.user.feign.request.sysrole; ...@@ -2,9 +2,64 @@ package com.yd.user.feign.request.sysrole;
import lombok.Data; import lombok.Data;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
/** /**
* 编辑角色-入参 * 编辑角色-入参
*/ */
@Data @Data
public class ApiSysRoleEditRequest { public class ApiSysRoleEditRequest {
@NotNull(message = "角色主键id不能为空")
private Long id;
/**
* 角色唯一标识(业务ID)
*/
@NotBlank(message = "角色唯一标识(业务ID)不能为空")
private String roleBizId;
/**
* 角色名称
*/
@NotBlank(message = "角色名称不能为空")
private String roleName;
/**
* 角色权限字符串(用于安全认证访问控制)
*/
private String roleKey;
/**
* 角色类型(1:超级管理员 2:管理员 3:普通用户)
*/
private Integer roleType;
/**
* 描述
*/
private String description;
/**
* 状态(0:停用 1:启用)
*/
@NotNull(message = "状态不能为空")
private Integer status;
/**
* 作用域(1:系统级(全局) 2:租户级 3:项目级)
*/
@NotNull(message = "作用域不能为空")
private Integer scope;
/**
* 所属租户ID(业务id)
*/
private String tenantBizId;
/**
* 所属项目ID(业务id)
*/
private String projectBizId;
} }
package com.yd.user.feign.request.sysrole; package com.yd.user.feign.request.sysrole;
import com.yd.common.dto.PageDto;
import lombok.Data; import lombok.Data;
/** /**
* 角色分页查询-入参 * 角色分页查询-入参
*/ */
@Data @Data
public class ApiSysRolePageRequest { public class ApiSysRolePageRequest extends PageDto {
/**
* 角色名称
*/
private String roleName;
/**
* 作用域(1:系统级(全局) 2:租户级 3:项目级)
*/
private Integer scope;
} }
...@@ -13,6 +13,12 @@ import java.time.LocalDateTime; ...@@ -13,6 +13,12 @@ import java.time.LocalDateTime;
public class ApiSysTenantEditRequest { public class ApiSysTenantEditRequest {
/** /**
* 当前登录账号绑定所属租户ID(业务id)
* 超级管理员不传值,非超级管理传值
*/
private String loginTenantBizId;
/**
* 租户主键id * 租户主键id
*/ */
@NotNull(message = "租户主键id不能为空") @NotNull(message = "租户主键id不能为空")
...@@ -22,7 +28,7 @@ public class ApiSysTenantEditRequest { ...@@ -22,7 +28,7 @@ public class ApiSysTenantEditRequest {
* 租户唯一标识(业务ID) * 租户唯一标识(业务ID)
*/ */
@NotBlank(message = "租户唯一标识(业务ID)不能为空") @NotBlank(message = "租户唯一标识(业务ID)不能为空")
private String tenantUid; private String tenantBizId;
/** /**
* 租户名称 * 租户名称
......
...@@ -2,9 +2,77 @@ package com.yd.user.feign.request.sysuser; ...@@ -2,9 +2,77 @@ package com.yd.user.feign.request.sysuser;
import lombok.Data; import lombok.Data;
import javax.validation.constraints.Email;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Pattern;
/** /**
* 添加用户-入参 * 添加用户-入参
*/ */
@Data @Data
public class ApiSysUserAddRequest { public class ApiSysUserAddRequest {
/**
* 登录用户账号
*/
@NotBlank(message = "登录用户账号不能为空")
private String userName;
/**
* 明文密码 TODO
*/
@NotBlank(message = "密码不能为空")
private String password;
/**
* 真实姓名
*/
@NotBlank(message = "真实姓名不能为空")
private String realName;
/**
* 昵称
*/
@NotBlank(message = "昵称不能为空")
private String nickName;
/**
* 头像URL
*/
@NotBlank(message = "头像URL不能为空")
private String avatar;
/**
* 邮箱
*/
@NotBlank(message = "邮箱不能为空")
@Email(message = "邮箱格式不正确")
private String email;
/**
* 手机号
*/
@NotBlank(message = "手机号不能为空")
@Pattern(regexp = "^(?:(?:\\+|00)86)?1[3-9]\\d{9}$", message = "手机号格式不正确")
private String mobile;
/**
* 性别(0:未知 1:男 2:女)
*/
@NotNull(message = "性别不能为空")
private Integer gender;
/**
* 状态(0:禁用 1:正常 2:锁定)
*/
@NotNull(message = "状态不能为空")
private Integer status;
/**
* 用户来源(1:系统创建...)
*/
@NotNull(message = "用户来源不能为空")
private Integer sourceType;
} }
package com.yd.user.feign.request.sysuser;public class ApiSysUserEditPwdRequest { package com.yd.user.feign.request.sysuser;
import lombok.Data;
/**
* 编辑用户密码入参
*/
@Data
public class ApiSysUserEditPwdRequest {
} }
...@@ -2,9 +2,89 @@ package com.yd.user.feign.request.sysuser; ...@@ -2,9 +2,89 @@ package com.yd.user.feign.request.sysuser;
import lombok.Data; import lombok.Data;
import javax.validation.constraints.Email;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Pattern;
/** /**
* 编辑用户-入参 * 编辑用户-入参
*/ */
@Data @Data
public class ApiSysUserEditRequest { public class ApiSysUserEditRequest {
/**
* 用户ID
*/
@NotNull(message = "用户表主键id不能为空")
private Long id;
/**
* 用户唯一标识(业务ID)
*/
@NotBlank(message = "用户唯一标识(业务ID)不能为空")
private String userBizId;
/**
* 登录用户账号
*/
@NotBlank(message = "登录用户账号不能为空")
private String userName;
/**
* 明文密码 TODO
*/
@NotBlank(message = "密码不能为空")
private String password;
/**
* 真实姓名
*/
@NotBlank(message = "真实姓名不能为空")
private String realName;
/**
* 昵称
*/
@NotBlank(message = "昵称不能为空")
private String nickName;
/**
* 头像URL
*/
@NotBlank(message = "头像URL不能为空")
private String avatar;
/**
* 邮箱
*/
@NotBlank(message = "邮箱不能为空")
@Email(message = "邮箱格式不正确")
private String email;
/**
* 手机号
*/
@NotBlank(message = "手机号不能为空")
@Pattern(regexp = "^(?:(?:\\+|00)86)?1[3-9]\\d{9}$", message = "手机号格式不正确")
private String mobile;
/**
* 性别(0:未知 1:男 2:女)
*/
@NotNull(message = "性别不能为空")
private Integer gender;
/**
* 状态(0:禁用 1:正常 2:锁定)
*/
@NotNull(message = "状态不能为空")
private Integer status;
/**
* 用户来源(1:系统创建...)
*/
@NotNull(message = "用户来源不能为空")
private Integer sourceType;
} }
...@@ -3,6 +3,8 @@ package com.yd.user.feign.request.sysuser; ...@@ -3,6 +3,8 @@ package com.yd.user.feign.request.sysuser;
import com.yd.common.dto.PageDto; import com.yd.common.dto.PageDto;
import lombok.Data; import lombok.Data;
import java.time.LocalDateTime;
/** /**
* 用户分页查询-入参 * 用户分页查询-入参
*/ */
...@@ -12,6 +14,26 @@ public class ApiSysUserPageRequest extends PageDto { ...@@ -12,6 +14,26 @@ public class ApiSysUserPageRequest extends PageDto {
/** /**
* 登录账号 * 登录账号
*/ */
private String username; private String userName;
/**
* 真实姓名
*/
private String realName;
/**
* 手机号
*/
private String mobile;
/**
* 状态(0:禁用 1:正常 2:锁定)
*/
private Integer status;
/**
* 是否超级管理员(0:否 1:是)
*/
private Integer isSuperAdmin;
} }
package com.yd.user.feign.response.relprojectrole;public class ApiRelProjectRoleListPageResponse { package com.yd.user.feign.response.relprojectrole;
import lombok.Data;
/**
* 项目和角色关系分页查询出参
*/
@Data
public class ApiRelProjectRoleListPageResponse {
/**
* 项目和角色关系主键id
*/
private Long id;
/**
* 项目ID(业务id)
*/
private String projectBizId;
/**
* 角色ID(业务id)
*/
private String roleBizId;
/**
* 角色名称
*/
private String roleName;
/**
* 作用域(1:系统级(全局) 2:租户级 3:项目级)
*/
private Integer scope;
/**
* 角色类型(1:超级管理员 2:管理员 3:普通用户)
*/
private Integer roleType;
} }
package com.yd.user.feign.response.relprojectrole;public class ApiRelProjectRoleSelectPageResponse { package com.yd.user.feign.response.relprojectrole;
import lombok.Data;
/**
* 导入-选择角色分页查询(查询当前项目级(当前所属项目绑定的角色)或者系统级(全局角色在任何地方都适用导入绑定)的角色表数据)出参
*/
@Data
public class ApiRelProjectRoleSelectPageResponse {
/**
* 角色表主键id
*/
private Long id;
/**
* 角色唯一标识(业务ID)
*/
private String roleBizId;
/**
* 角色名称
*/
private String roleName;
/**
* 角色类型(1:超级管理员 2:管理员 3:普通用户)
*/
private Integer roleType;
/**
* 状态(0:停用 1:启用)
*/
private Integer status;
/**
* 作用域(1:系统级(全局) 2:租户级 3:项目级)
*/
private Integer scope;
} }
package com.yd.user.feign.response.relprojectuser;public class ApiRelProjectUserListPageResponse { package com.yd.user.feign.response.relprojectuser;
import lombok.Data;
/**
* 项目和用户关系分页查询出参
*/
@Data
public class ApiRelProjectUserListPageResponse {
/**
* 项目和用户关系主键id
*/
private Long id;
/**
* 用户唯一标识(业务ID)
*/
private String userBizId;
/**
* 登录账号
*/
private String userName;
/**
* 真实姓名
*/
private String realName;
/**
* 昵称
*/
private String nickName;
/**
* 邮箱
*/
private String email;
/**
* 手机号
*/
private String mobile;
/**
* 性别(0:未知 1:男 2:女)
*/
private Integer gender;
} }
package com.yd.user.feign.response.relprojectuser;public class ApiRelProjectUserSelectPageResponse { package com.yd.user.feign.response.relprojectuser;
import lombok.Data;
/**
* 导入-选择用户分页查询(查询用户库的用户id不在当前项目用户关系的用户id列表中的数据)出参
*/
@Data
public class ApiRelProjectUserSelectPageResponse {
/**
* 用户表主键id
*/
private Long id;
/**
* 用户唯一标识(业务ID)
*/
private String userBizId;
/**
* 登录账号
*/
private String userName;
/**
* 真实姓名
*/
private String realName;
/**
* 昵称
*/
private String nickName;
/**
* 邮箱
*/
private String email;
/**
* 手机号
*/
private String mobile;
/**
* 性别(0:未知 1:男 2:女)
*/
private Integer gender;
} }
package com.yd.user.feign.response.reltenantmenu;public class ApiRelTenantMenuListPageResponse { package com.yd.user.feign.response.reltenantmenu;
import lombok.Data;
/**
* 租户和菜单关系分页查询出参
*/
@Data
public class ApiRelTenantMenuListPageResponse {
/**
* 租户和菜单关系主键id
*/
private Long id;
/**
* 租户ID(业务id)
*/
private String tenantBizId;
/**
* 菜单ID(业务id)
*/
private String menuBizId;
/**
* 菜单名称
*/
private String menuName;
/**
* 作用域(1:系统级(全局) 2:租户级 3:项目级)
*/
private Integer scope;
} }
package com.yd.user.feign.response.reltenantmenu;public class ApiRelTenantMenuSelectPageResponse { package com.yd.user.feign.response.reltenantmenu;
import lombok.Data;
/**
* 导入-选择菜单分页查询(查询当前租户级(当前所属租户绑定的菜单)或者系统级(全局菜单在任何地方都适用导入绑定)的菜单表数据)
*/
@Data
public class ApiRelTenantMenuSelectPageResponse {
} }
package com.yd.user.feign.response.reltenantproject;public class ApiRelTenantProjectListPageResponse { package com.yd.user.feign.response.reltenantproject;
import lombok.Data;
import java.time.LocalDateTime;
@Data
public class ApiRelTenantProjectListPageResponse {
/**
* 租户-项目关系表主键id
*/
private Long id;
/**
* 租户ID(业务id)
*/
private String tenantBizId;
/**
* 项目ID(业务id)
*/
private String projectBizId;
/**
* 项目名称
*/
private String projectName;
/**
* 项目开始时间
*/
private LocalDateTime startTime;
/**
* 项目结束时间
*/
private LocalDateTime endTime;
} }
package com.yd.user.feign.response.reltenantproject;public class ApiRelTenantProjectSelectPageResponse { package com.yd.user.feign.response.reltenantproject;
import lombok.Data;
/**
* 导入-选择项目分页查询
*/
@Data
public class ApiRelTenantProjectSelectPageResponse {
/**
* 项目表主键id
*/
private Long id;
/**
* 项目ID(业务id)
*/
private String projectBizId;
/**
* 项目名称
*/
private String projectName;
/**
* 作用域(1:系统级(全局) 2:租户级 )
*/
private Integer scope;
} }
package com.yd.user.feign.response.reltenantrole;public class ApiRelTenantRoleListPageResponse { package com.yd.user.feign.response.reltenantrole;
import lombok.Data;
/**
* 租户和角色关系分页查询出参
*/
@Data
public class ApiRelTenantRoleListPageResponse {
/**
* 租户和角色关系主键id
*/
private Long id;
/**
* 租户ID(业务id)
*/
private String tenantBizId;
/**
* 角色ID(业务id)
*/
private String roleBizId;
/**
* 角色名称
*/
private String roleName;
/**
* 作用域(1:系统级(全局) 2:租户级 3:项目级)
*/
private Integer scope;
/**
* 角色类型(1:超级管理员 2:管理员 3:普通用户)
*/
private Integer roleType;
} }
package com.yd.user.feign.response.reltenantrole;public class ApiRelTenantRoleSelectPageResponse { package com.yd.user.feign.response.reltenantrole;
import lombok.Data;
/**
* 导入-选择角色分页查询出参
*/
@Data
public class ApiRelTenantRoleSelectPageResponse {
/**
* 角色表主键id
*/
private Long id;
/**
* 角色唯一标识(业务ID)
*/
private String roleBizId;
/**
* 角色名称
*/
private String roleName;
/**
* 角色类型(1:超级管理员 2:管理员 3:普通用户)
*/
private Integer roleType;
/**
* 状态(0:停用 1:启用)
*/
private Integer status;
/**
* 作用域(1:系统级(全局) 2:租户级 3:项目级)
*/
private Integer scope;
} }
package com.yd.user.feign.response.reltenantuser;public class ApiRelTenantUserListPageResponse { package com.yd.user.feign.response.reltenantuser;
import lombok.Data;
/**
* 租户和用户关系分页查询出参
*/
@Data
public class ApiRelTenantUserListPageResponse {
/**
* 租户和用户关系主键id
*/
private Long id;
/**
* 用户唯一标识(业务ID)
*/
private String userBizId;
/**
* 登录账号
*/
private String userName;
/**
* 真实姓名
*/
private String realName;
/**
* 昵称
*/
private String nickName;
/**
* 邮箱
*/
private String email;
/**
* 手机号
*/
private String mobile;
/**
* 性别(0:未知 1:男 2:女)
*/
private Integer gender;
} }
package com.yd.user.feign.response.reltenantuser;public class ApiRelTenantUserSelectPageResponse { package com.yd.user.feign.response.reltenantuser;
import lombok.Data;
/**
* 导入-选择用户分页查询(查询用户库的用户id不在当前租户用户关系的用户id列表中的数据)出参
*/
@Data
public class ApiRelTenantUserSelectPageResponse {
/**
* 用户表主键id
*/
private Long id;
/**
* 用户唯一标识(业务ID)
*/
private String userBizId;
/**
* 登录账号
*/
private String userName;
/**
* 真实姓名
*/
private String realName;
/**
* 昵称
*/
private String nickName;
/**
* 邮箱
*/
private String email;
/**
* 手机号
*/
private String mobile;
/**
* 性别(0:未知 1:男 2:女)
*/
private Integer gender;
} }
package com.yd.user.feign.response.reluserrole;public class ApiSelectedProjectUserRoleListResponse { package com.yd.user.feign.response.reluserrole;
import lombok.Data;
/**
* 项目管理-用户配置-权限配置-查询选中的角色列表出参
*/
@Data
public class ApiSelectedProjectUserRoleListResponse {
/**
* 用户角色关系表主键id
*/
private Long id;
/**
* 租户ID(业务id)(冗余字段,目的当前关系是发生在哪个作用域下:租户级)
*/
private String tenantBizId;
/**
* 项目ID(业务id)(冗余字段,目的当前关系是发生在哪个作用域下:项目级)
*/
private String projectBizId;
/**
* 用户ID(业务id)
*/
private String userBizId;
/**
* 角色唯一标识(业务ID)
*/
private String roleBizId;
/**
* 角色名称
*/
private String roleName;
} }
package com.yd.user.feign.response.reluserrole;public class ApiSelectedTenantUserRoleListResponse { package com.yd.user.feign.response.reluserrole;
import lombok.Data;
@Data
public class ApiSelectedTenantUserRoleListResponse {
/**
* 用户角色关系表主键id
*/
private Long id;
/**
* 租户ID(业务id)(冗余字段,目的当前关系是发生在哪个作用域下:租户级)
*/
private String tenantBizId;
/**
* 项目ID(业务id)(冗余字段,目的当前关系是发生在哪个作用域下:项目级)
*/
private String projectBizId;
/**
* 用户ID(业务id)
*/
private String userBizId;
/**
* 角色唯一标识(业务ID)
*/
private String roleBizId;
/**
* 角色名称
*/
private String roleName;
} }
package com.yd.user.feign.response.sysmenu;public class ApiSysMenuDetailResponse { package com.yd.user.feign.response.sysmenu;
import lombok.Data;
import java.time.LocalDateTime;
/**
* 获取菜单详情出参
*/
@Data
public class ApiSysMenuDetailResponse {
/**
* 菜单主键id
*/
private Long id;
/**
* 菜单唯一标识(业务ID)
*/
private String menuBizId;
/**
* 父菜单ID
*/
private Long parentBizId;
/**
* 菜单名称
*/
private String menuName;
/**
* 类型(1:目录 2:菜单 3:按钮)
*/
private Integer menuType;
/**
* 路由地址
*/
private String path;
/**
* 组件路径
*/
private String component;
/**
* 图标
*/
private String icon;
/**
* 是否外链(0:否 1:是)
*/
private Integer isExternal;
/**
* 是否缓存(0:否 1:是)
*/
private Integer isCache;
/**
* 是否显示(0:隐藏 1:显示)
*/
private Integer isVisible;
/**
* 权限标识(如:user:add)
*/
private String permission;
/**
* 显示顺序
*/
private Integer orderNum;
/**
* 状态(0:停用 1:启用)
*/
private Integer status;
/**
* 作用域(1:系统级(全局) 2:租户级 3:项目级)
*/
private Integer scope;
/**
* 所属租户ID(业务id)
*/
private String tenantBizId;
/**
* 所属项目ID(业务id)
*/
private String projectBizId;
/**
* 通用备注
*/
private String remark;
/**
* 删除标识: 0-正常, 1-删除
*/
private Boolean isDeleted;
/**
* 创建人ID
*/
private String creatorId;
/**
* 更新人ID
*/
private String updaterId;
/**
* 创建时间
*/
private LocalDateTime createTime;
/**
* 更新时间
*/
private LocalDateTime updateTime;
} }
package com.yd.user.feign.response.sysmenu;public class ApiSysMenuPageResponse { package com.yd.user.feign.response.sysmenu;
import lombok.Data;
/**
* 菜单分页查询出参
*/
@Data
public class ApiSysMenuPageResponse {
} }
package com.yd.user.feign.response.sysmenu;public class ApiSysMenuTreeListResponse { package com.yd.user.feign.response.sysmenu;
import lombok.Data;
/**
* 树形菜单列表查询
*/
@Data
public class ApiSysMenuTreeListResponse {
} }
...@@ -2,9 +2,90 @@ package com.yd.user.feign.response.sysproject; ...@@ -2,9 +2,90 @@ package com.yd.user.feign.response.sysproject;
import lombok.Data; import lombok.Data;
import java.time.LocalDateTime;
/** /**
* 获取项目详情-出参 * 获取项目详情-出参
*/ */
@Data @Data
public class ApiSysProjectDetailResponse { public class ApiSysProjectDetailResponse {
/**
* 项目ID
*/
private Long id;
/**
* 项目唯一标识(业务ID)
*/
private String projectBizId;
/**
* 项目名称
*/
private String projectName;
/**
* 项目编码(租户内唯一)
*/
private String projectCode;
/**
* 项目描述
*/
private String description;
/**
* 状态(0:禁用 1:启用)
*/
private Integer status;
/**
* 项目开始时间
*/
private LocalDateTime startTime;
/**
* 项目结束时间
*/
private LocalDateTime endTime;
/**
* 所属租户ID(业务id) 数据范围:1-私有
*/
private String tenantBizId;
/**
* 所属租户名称 数据范围:1-私有
*/
private String tenantName;
/**
* 通用备注
*/
private String remark;
/**
* 删除标识: 0-正常, 1-删除
*/
private Boolean isDeleted;
/**
* 创建人ID
*/
private String creatorId;
/**
* 更新人ID
*/
private String updaterId;
/**
* 创建时间
*/
private LocalDateTime createTime;
/**
* 更新时间
*/
private LocalDateTime updateTime;
} }
package com.yd.user.feign.response.sysproject;public class ApiSysProjectPageResponse { package com.yd.user.feign.response.sysproject;
import lombok.Data;
import java.time.LocalDateTime;
/**
* 项目分页查询出参
*/
@Data
public class ApiSysProjectPageResponse {
/**
* 项目ID
*/
private Long id;
/**
* 项目唯一标识(业务ID)
*/
private String projectBizId;
/**
* 项目名称
*/
private String projectName;
/**
* 状态(0:禁用 1:启用)
*/
private Integer status;
/**
* 项目开始时间
*/
private LocalDateTime startTime;
/**
* 项目结束时间
*/
private LocalDateTime endTime;
// /**
// * 所属租户ID(业务id)
// */
// private String tenantBizId;
//
// /**
// * 所属租户名称
// */
// private String tenantName;
/**
* 创建时间
*/
private LocalDateTime createTime;
} }
...@@ -2,9 +2,99 @@ package com.yd.user.feign.response.sysrole; ...@@ -2,9 +2,99 @@ package com.yd.user.feign.response.sysrole;
import lombok.Data; import lombok.Data;
import java.time.LocalDateTime;
/** /**
* 获取角色详情-出参 * 获取角色详情-出参
*/ */
@Data @Data
public class ApiSysRoleDetailResponse { public class ApiSysRoleDetailResponse {
private Long id;
/**
* 角色唯一标识(业务ID)
*/
private String roleBizId;
/**
* 角色名称
*/
private String roleName;
/**
* 角色权限字符串(用于安全认证访问控制)
*/
private String roleKey;
/**
* 角色类型(1:超级管理员 2:管理员 3:普通用户)
*/
private Integer roleType;
/**
* 描述
*/
private String description;
/**
* 状态(0:停用 1:启用)
*/
private Integer status;
/**
* 作用域(1:系统级(全局) 2:租户级 3:项目级)
*/
private Integer scope;
/**
* 所属租户ID(业务id)
*/
private String tenantBizId;
/**
* 所属租户名称
*/
private String tenantName;
/**
* 所属项目ID(业务id)
*/
private String projectBizId;
/**
* 所属项目名称
*/
private String projectName;
/**
* 通用备注
*/
private String remark;
/**
* 删除标识: 0-正常, 1-删除
*/
private Boolean isDeleted;
/**
* 创建人ID
*/
private String creatorId;
/**
* 更新人ID
*/
private String updaterId;
/**
* 创建时间
*/
private LocalDateTime createTime;
/**
* 更新时间
*/
private LocalDateTime updateTime;
} }
package com.yd.user.feign.response.sysrole;public class ApiSysRolePageResponse { package com.yd.user.feign.response.sysrole;
import lombok.Data;
import java.time.LocalDateTime;
/**
* 角色分页查询出参
*/
@Data
public class ApiSysRolePageResponse {
/**
* 角色表主键id
*/
private Long id;
/**
* 角色唯一标识(业务ID)
*/
private String roleBizId;
/**
* 角色名称
*/
private String roleName;
/**
* 角色类型(1:超级管理员 2:管理员 3:普通用户)
*/
private Integer roleType;
/**
* 状态(0:停用 1:启用)
*/
private Integer status;
/**
* 作用域(1:系统级(全局) 2:租户级 3:项目级)
*/
private Integer scope;
/**
* 所属租户ID(业务id)
*/
private String tenantBizId;
/**
* 所属租户名称
*/
private String tenantName;
/**
* 所属项目ID(业务id)
*/
private String projectBizId;
/**
* 所属项目名称
*/
private String projectName;
/**
* 创建时间
*/
private LocalDateTime createTime;
} }
...@@ -18,7 +18,7 @@ public class ApiSysTenantDetailResponse { ...@@ -18,7 +18,7 @@ public class ApiSysTenantDetailResponse {
/** /**
* 租户唯一标识(业务ID) * 租户唯一标识(业务ID)
*/ */
private String tenantUid; private String tenantBizId;
/** /**
* 租户名称 * 租户名称
......
...@@ -18,7 +18,7 @@ public class ApiSysTenantPageResponse { ...@@ -18,7 +18,7 @@ public class ApiSysTenantPageResponse {
/** /**
* 租户唯一标识(业务ID) * 租户唯一标识(业务ID)
*/ */
private String tenantUid; private String tenantBizId;
/** /**
* 租户名称 * 租户名称
......
...@@ -17,12 +17,12 @@ public class ApiSysUserDetailResponse { ...@@ -17,12 +17,12 @@ public class ApiSysUserDetailResponse {
/** /**
* 用户唯一标识(业务ID) * 用户唯一标识(业务ID)
*/ */
private String userUid; private String userBizId;
/** /**
* 登录账号 * 登录账号
*/ */
private String username; private String userName;
/** /**
* 加密密码 * 加密密码
...@@ -62,17 +62,17 @@ public class ApiSysUserDetailResponse { ...@@ -62,17 +62,17 @@ public class ApiSysUserDetailResponse {
/** /**
* 性别(0:未知 1:男 2:女) * 性别(0:未知 1:男 2:女)
*/ */
private Byte gender; private Integer gender;
/** /**
* 状态(0:禁用 1:正常 2:锁定) * 状态(0:禁用 1:正常 2:锁定)
*/ */
private Byte status; private Integer status;
/** /**
* 是否超级管理员(0:否 1:是) * 是否超级管理员(0:否 1:是)
*/ */
private Byte isSuperadmin; private Integer isSuperAdmin;
/** /**
* 最后登录IP * 最后登录IP
...@@ -92,7 +92,7 @@ public class ApiSysUserDetailResponse { ...@@ -92,7 +92,7 @@ public class ApiSysUserDetailResponse {
/** /**
* 用户来源(1:系统创建...) * 用户来源(1:系统创建...)
*/ */
private Byte sourceType; private Integer sourceType;
/** /**
* 通用备注 * 通用备注
......
...@@ -15,22 +15,12 @@ public class ApiSysUserPageResponse { ...@@ -15,22 +15,12 @@ public class ApiSysUserPageResponse {
/** /**
* 用户唯一标识(业务ID) * 用户唯一标识(业务ID)
*/ */
private String userUid; private String userBizId;
/** /**
* 登录账号 * 登录账号
*/ */
private String username; private String userName;
/**
* 加密密码
*/
private String password;
/**
* 密码盐值
*/
private String passwordSalt;
/** /**
* 真实姓名 * 真实姓名
...@@ -43,11 +33,6 @@ public class ApiSysUserPageResponse { ...@@ -43,11 +33,6 @@ public class ApiSysUserPageResponse {
private String nickName; private String nickName;
/** /**
* 头像URL
*/
private String avatar;
/**
* 邮箱 * 邮箱
*/ */
private String email; private String email;
...@@ -60,17 +45,17 @@ public class ApiSysUserPageResponse { ...@@ -60,17 +45,17 @@ public class ApiSysUserPageResponse {
/** /**
* 性别(0:未知 1:男 2:女) * 性别(0:未知 1:男 2:女)
*/ */
private Byte gender; private Integer gender;
/** /**
* 状态(0:禁用 1:正常 2:锁定) * 状态(0:禁用 1:正常 2:锁定)
*/ */
private Byte status; private Integer status;
/** /**
* 是否超级管理员(0:否 1:是) * 是否超级管理员(0:否 1:是)
*/ */
private Byte isSuperadmin; private Integer isSuperAdmin;
/** /**
* 最后登录IP * 最后登录IP
...@@ -90,36 +75,11 @@ public class ApiSysUserPageResponse { ...@@ -90,36 +75,11 @@ public class ApiSysUserPageResponse {
/** /**
* 用户来源(1:系统创建...) * 用户来源(1:系统创建...)
*/ */
private Byte sourceType; private Integer sourceType;
/**
* 通用备注
*/
private String remark;
/**
* 删除标识: 0-正常, 1-删除
*/
private Boolean isDeleted;
/**
* 创建人ID
*/
private String creatorId;
/**
* 更新人ID
*/
private String updaterId;
/** /**
* 创建时间 * 创建时间
*/ */
private LocalDateTime createTime; private LocalDateTime createTime;
/**
* 更新时间
*/
private LocalDateTime updateTime;
} }
package com.yd.user.service.dao; package com.yd.user.service.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yd.user.feign.request.relprojectrole.ApiRelProjectRoleListPageRequest;
import com.yd.user.feign.request.relprojectrole.ApiRelProjectRoleSelectPageRequest;
import com.yd.user.feign.request.reltenantrole.ApiRelTenantRoleListPageRequest;
import com.yd.user.feign.request.reltenantrole.ApiRelTenantRoleSelectPageRequest;
import com.yd.user.feign.response.relprojectrole.ApiRelProjectRoleListPageResponse;
import com.yd.user.feign.response.relprojectrole.ApiRelProjectRoleSelectPageResponse;
import com.yd.user.feign.response.reltenantrole.ApiRelTenantRoleListPageResponse;
import com.yd.user.feign.response.reltenantrole.ApiRelTenantRoleSelectPageResponse;
import com.yd.user.service.model.RelProjectRole; import com.yd.user.service.model.RelProjectRole;
import org.apache.ibatis.annotations.Param;
/** /**
* <p> * <p>
...@@ -13,4 +23,15 @@ import com.yd.user.service.model.RelProjectRole; ...@@ -13,4 +23,15 @@ import com.yd.user.service.model.RelProjectRole;
*/ */
public interface RelProjectRoleMapper extends BaseMapper<RelProjectRole> { public interface RelProjectRoleMapper extends BaseMapper<RelProjectRole> {
IPage<ApiRelProjectRoleListPageResponse> page(@Param("page") IPage<ApiRelProjectRoleListPageResponse> page,
@Param("request") ApiRelProjectRoleListPageRequest request);
/**
* 导入-选择角色分页查询(查询当前项目级(当前所属项目绑定的角色)或者系统级(全局角色在任何地方都适用导入绑定)的角色表数据)
* @param page
* @param request
* @return
*/
IPage<ApiRelProjectRoleSelectPageResponse> selectProjectPage(@Param("page") IPage<ApiRelProjectRoleSelectPageResponse> page,
@Param("request") ApiRelProjectRoleSelectPageRequest request);
} }
package com.yd.user.service.dao; package com.yd.user.service.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yd.user.feign.request.relprojectuser.ApiRelProjectUserListPageRequest;
import com.yd.user.feign.request.relprojectuser.ApiRelProjectUserSelectPageRequest;
import com.yd.user.feign.request.reltenantuser.ApiRelTenantUserListPageRequest;
import com.yd.user.feign.request.reltenantuser.ApiRelTenantUserSelectPageRequest;
import com.yd.user.feign.response.relprojectuser.ApiRelProjectUserListPageResponse;
import com.yd.user.feign.response.relprojectuser.ApiRelProjectUserSelectPageResponse;
import com.yd.user.feign.response.reltenantuser.ApiRelTenantUserListPageResponse;
import com.yd.user.feign.response.reltenantuser.ApiRelTenantUserSelectPageResponse;
import com.yd.user.service.model.RelProjectUser; import com.yd.user.service.model.RelProjectUser;
import org.apache.ibatis.annotations.Param;
/** /**
* <p> * <p>
...@@ -13,4 +23,10 @@ import com.yd.user.service.model.RelProjectUser; ...@@ -13,4 +23,10 @@ import com.yd.user.service.model.RelProjectUser;
*/ */
public interface RelProjectUserMapper extends BaseMapper<RelProjectUser> { public interface RelProjectUserMapper extends BaseMapper<RelProjectUser> {
IPage<ApiRelProjectUserListPageResponse> page(@Param("page") IPage<ApiRelProjectUserListPageResponse> page,
@Param("request") ApiRelProjectUserListPageRequest request);
IPage<ApiRelProjectUserSelectPageResponse> selectUserPage(@Param("page") IPage<ApiRelProjectUserSelectPageResponse> page,
@Param("request") ApiRelProjectUserSelectPageRequest request);
} }
package com.yd.user.service.dao; package com.yd.user.service.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yd.user.feign.request.reltenantmenu.ApiRelTenantMenuListPageRequest;
import com.yd.user.feign.request.reltenantmenu.ApiRelTenantMenuSelectPageRequest;
import com.yd.user.feign.request.reltenantrole.ApiRelTenantRoleListPageRequest;
import com.yd.user.feign.request.reltenantrole.ApiRelTenantRoleSelectPageRequest;
import com.yd.user.feign.response.reltenantmenu.ApiRelTenantMenuListPageResponse;
import com.yd.user.feign.response.reltenantmenu.ApiRelTenantMenuSelectPageResponse;
import com.yd.user.feign.response.reltenantrole.ApiRelTenantRoleListPageResponse;
import com.yd.user.feign.response.reltenantrole.ApiRelTenantRoleSelectPageResponse;
import com.yd.user.service.model.RelTenantMenu; import com.yd.user.service.model.RelTenantMenu;
import org.apache.ibatis.annotations.Param;
/** /**
* <p> * <p>
...@@ -13,4 +23,10 @@ import com.yd.user.service.model.RelTenantMenu; ...@@ -13,4 +23,10 @@ import com.yd.user.service.model.RelTenantMenu;
*/ */
public interface RelTenantMenuMapper extends BaseMapper<RelTenantMenu> { public interface RelTenantMenuMapper extends BaseMapper<RelTenantMenu> {
IPage<ApiRelTenantMenuListPageResponse> page(@Param("page") IPage<ApiRelTenantMenuListPageResponse> page,
@Param("request") ApiRelTenantMenuListPageRequest request);
IPage<ApiRelTenantMenuSelectPageResponse> selectProjectPage(@Param("page") IPage<ApiRelTenantMenuSelectPageResponse> page,
@Param("request") ApiRelTenantMenuSelectPageRequest request);
} }
package com.yd.user.service.dao; package com.yd.user.service.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectListPageRequest;
import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectSelectPageRequest;
import com.yd.user.feign.request.sysuser.ApiSysUserPageRequest;
import com.yd.user.feign.response.reltenantproject.ApiRelTenantProjectListPageResponse;
import com.yd.user.feign.response.reltenantproject.ApiRelTenantProjectSelectPageResponse;
import com.yd.user.feign.response.sysuser.ApiSysUserPageResponse;
import com.yd.user.service.model.RelTenantProject; import com.yd.user.service.model.RelTenantProject;
import org.apache.ibatis.annotations.Param;
/** /**
* <p> * <p>
...@@ -13,4 +21,14 @@ import com.yd.user.service.model.RelTenantProject; ...@@ -13,4 +21,14 @@ import com.yd.user.service.model.RelTenantProject;
*/ */
public interface RelTenantProjectMapper extends BaseMapper<RelTenantProject> { public interface RelTenantProjectMapper extends BaseMapper<RelTenantProject> {
IPage<ApiRelTenantProjectListPageResponse> page(@Param("page") IPage<ApiRelTenantProjectListPageResponse> page, @Param("request") ApiRelTenantProjectListPageRequest request);
/**
* 导入-选择项目分页查询(查询项目表作用域字段为当前租户级和系统级数据)
* @param page
* @param request
* @return
*/
IPage<ApiRelTenantProjectSelectPageResponse> selectProjectPage(@Param("page") IPage<ApiRelTenantProjectSelectPageResponse> page, @Param("request") ApiRelTenantProjectSelectPageRequest request);
} }
package com.yd.user.service.dao; package com.yd.user.service.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectListPageRequest;
import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectSelectPageRequest;
import com.yd.user.feign.request.reltenantrole.ApiRelTenantRoleListPageRequest;
import com.yd.user.feign.request.reltenantrole.ApiRelTenantRoleSelectPageRequest;
import com.yd.user.feign.response.reltenantproject.ApiRelTenantProjectListPageResponse;
import com.yd.user.feign.response.reltenantproject.ApiRelTenantProjectSelectPageResponse;
import com.yd.user.feign.response.reltenantrole.ApiRelTenantRoleListPageResponse;
import com.yd.user.feign.response.reltenantrole.ApiRelTenantRoleSelectPageResponse;
import com.yd.user.service.model.RelTenantRole; import com.yd.user.service.model.RelTenantRole;
import org.apache.ibatis.annotations.Param;
/** /**
* <p> * <p>
...@@ -13,4 +23,15 @@ import com.yd.user.service.model.RelTenantRole; ...@@ -13,4 +23,15 @@ import com.yd.user.service.model.RelTenantRole;
*/ */
public interface RelTenantRoleMapper extends BaseMapper<RelTenantRole> { public interface RelTenantRoleMapper extends BaseMapper<RelTenantRole> {
IPage<ApiRelTenantRoleListPageResponse> page(@Param("page") IPage<ApiRelTenantRoleListPageResponse> page,
@Param("request") ApiRelTenantRoleListPageRequest request);
/**
* 导入-选择项目分页查询(查询项目表作用域字段为当前租户级和系统级数据)
* @param page
* @param request
* @return
*/
IPage<ApiRelTenantRoleSelectPageResponse> selectProjectPage(@Param("page") IPage<ApiRelTenantRoleSelectPageResponse> page,
@Param("request") ApiRelTenantRoleSelectPageRequest request);
} }
package com.yd.user.service.dao; package com.yd.user.service.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yd.user.feign.request.reltenantrole.ApiRelTenantRoleListPageRequest;
import com.yd.user.feign.request.reltenantuser.ApiRelTenantUserListPageRequest;
import com.yd.user.feign.request.reltenantuser.ApiRelTenantUserSelectPageRequest;
import com.yd.user.feign.response.reltenantrole.ApiRelTenantRoleListPageResponse;
import com.yd.user.feign.response.reltenantuser.ApiRelTenantUserListPageResponse;
import com.yd.user.feign.response.reltenantuser.ApiRelTenantUserSelectPageResponse;
import com.yd.user.service.model.RelTenantUser; import com.yd.user.service.model.RelTenantUser;
import org.apache.ibatis.annotations.Param;
/** /**
* <p> * <p>
...@@ -13,4 +21,10 @@ import com.yd.user.service.model.RelTenantUser; ...@@ -13,4 +21,10 @@ import com.yd.user.service.model.RelTenantUser;
*/ */
public interface RelTenantUserMapper extends BaseMapper<RelTenantUser> { public interface RelTenantUserMapper extends BaseMapper<RelTenantUser> {
IPage<ApiRelTenantUserListPageResponse> page(@Param("page") IPage<ApiRelTenantUserListPageResponse> page,
@Param("request") ApiRelTenantUserListPageRequest request);
IPage<ApiRelTenantUserSelectPageResponse> selectUserPage(@Param("page") IPage<ApiRelTenantUserSelectPageResponse> page,
@Param("request") ApiRelTenantUserSelectPageRequest request);
} }
package com.yd.user.service.dao; package com.yd.user.service.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yd.user.feign.response.reluserrole.ApiSelectedProjectUserRoleListResponse;
import com.yd.user.feign.response.reluserrole.ApiSelectedTenantUserRoleListResponse;
import com.yd.user.service.model.RelUserRole; import com.yd.user.service.model.RelUserRole;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/** /**
* <p> * <p>
...@@ -13,4 +18,9 @@ import com.yd.user.service.model.RelUserRole; ...@@ -13,4 +18,9 @@ import com.yd.user.service.model.RelUserRole;
*/ */
public interface RelUserRoleMapper extends BaseMapper<RelUserRole> { public interface RelUserRoleMapper extends BaseMapper<RelUserRole> {
List<ApiSelectedTenantUserRoleListResponse> selectedTenantUserRoleList(@Param("tenantBizId") String tenantBizId,
@Param("userBizId") String userBizId);
List<ApiSelectedProjectUserRoleListResponse> selectedProjectUserRoleList(@Param("projectBizId") String projectBizId,
@Param("userBizId") String userBizId);
} }
package com.yd.user.service.dao; package com.yd.user.service.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yd.user.feign.request.sysproject.ApiSysProjectPageRequest;
import com.yd.user.feign.request.systenant.ApiSysTenantPageRequest;
import com.yd.user.feign.response.sysproject.ApiSysProjectPageResponse;
import com.yd.user.feign.response.systenant.ApiSysTenantPageResponse;
import com.yd.user.service.model.SysProject; import com.yd.user.service.model.SysProject;
import org.apache.ibatis.annotations.Param;
/** /**
* <p> * <p>
...@@ -13,4 +19,9 @@ import com.yd.user.service.model.SysProject; ...@@ -13,4 +19,9 @@ import com.yd.user.service.model.SysProject;
*/ */
public interface SysProjectMapper extends BaseMapper<SysProject> { public interface SysProjectMapper extends BaseMapper<SysProject> {
IPage<ApiSysProjectPageResponse> page(@Param("page") IPage<ApiSysProjectPageResponse> page,
@Param("request") ApiSysProjectPageRequest request,
@Param("isAdmin") Boolean isAdmin,
@Param("loginTenantBizId") String loginTenantBizId);
} }
package com.yd.user.service.dao; package com.yd.user.service.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yd.user.feign.request.sysproject.ApiSysProjectPageRequest;
import com.yd.user.feign.request.sysrole.ApiSysRolePageRequest;
import com.yd.user.feign.response.sysproject.ApiSysProjectPageResponse;
import com.yd.user.feign.response.sysrole.ApiSysRolePageResponse;
import com.yd.user.service.model.SysRole; import com.yd.user.service.model.SysRole;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/** /**
* <p> * <p>
...@@ -13,4 +21,10 @@ import com.yd.user.service.model.SysRole; ...@@ -13,4 +21,10 @@ import com.yd.user.service.model.SysRole;
*/ */
public interface SysRoleMapper extends BaseMapper<SysRole> { public interface SysRoleMapper extends BaseMapper<SysRole> {
IPage<ApiSysRolePageResponse> page(@Param("page") IPage<ApiSysRolePageResponse> page,
@Param("request") ApiSysRolePageRequest request,
@Param("isAdmin") Boolean isAdmin,
@Param("projectBizIdList") List<String> projectBizIdList,
@Param("loginTenantBizId") String loginTenantBizId);
} }
...@@ -19,6 +19,11 @@ import org.apache.ibatis.annotations.Param; ...@@ -19,6 +19,11 @@ import org.apache.ibatis.annotations.Param;
*/ */
public interface SysTenantMapper extends BaseMapper<SysTenant> { public interface SysTenantMapper extends BaseMapper<SysTenant> {
IPage<ApiSysTenantPageResponse> page(@Param("page") IPage<ApiSysTenantPageResponse> page, @Param("request") ApiSysTenantPageRequest request); IPage<ApiSysTenantPageResponse> page(@Param("page") IPage<ApiSysTenantPageResponse> page,
@Param("request") ApiSysTenantPageRequest request,
@Param("isAdmin") Boolean isAdmin,
@Param("userBizId") String userBizId,
@Param("loginTenantBizId") String loginTenantBizId
);
} }
...@@ -17,6 +17,10 @@ import org.apache.ibatis.annotations.Param; ...@@ -17,6 +17,10 @@ import org.apache.ibatis.annotations.Param;
*/ */
public interface SysUserMapper extends BaseMapper<SysUser> { public interface SysUserMapper extends BaseMapper<SysUser> {
IPage<ApiSysUserPageResponse> page(@Param("page") IPage<ApiSysUserPageResponse> page, @Param("request") ApiSysUserPageRequest request); IPage<ApiSysUserPageResponse> page(@Param("page") IPage<ApiSysUserPageResponse> page,
@Param("request") ApiSysUserPageRequest request,
@Param("isAdmin") Boolean isAdmin,
@Param("loginTenantBizId") String loginTenantBizId
);
} }
package com.yd.user.service.dto;public class RelTenantProjectDto { package com.yd.user.service.dto;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class RelTenantProjectDto {
private Long id;
/**
* 租户ID(业务id)
*/
private String tenantBizId;
/**
* 项目ID(业务id)
*/
private String projectBizId;
/**
* 状态(0:禁用 1:启用)
*/
private Integer status;
} }
package com.yd.user.service.dto;public class SysMenuDto { package com.yd.user.service.dto;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* 菜单公共参数对象
*/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class SysMenuDto {
private Long id;
/**
* 菜单唯一标识(业务ID)
*/
private String menuBizId;
/**
* 父菜单ID
*/
private String parentBizId;
/**
* 菜单名称
*/
private String menuName;
/**
* 查询是否排除当前菜单唯一标识数据,默认false不排除,true的话projectBizId必传
*/
private Boolean isExcludeMy = false;
} }
package com.yd.user.service.dto;public class SysProjectDto { package com.yd.user.service.dto;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* 项目公共参数对象
*/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class SysProjectDto {
/**
* 项目主键id
*/
private Long id;
/**
* 项目唯一标识(业务ID)
*/
private String projectBizId;
/**
* 项目名称
*/
private String projectName;
/**
* 状态(0:禁用 1:启用)
*/
private Integer status;
/**
* 查询是否排除当前项目唯一标识数据,默认false不排除,true的话projectBizId必传
*/
private Boolean isExcludeMy = false;
} }
package com.yd.user.service.dto;public class SysRoleDto { package com.yd.user.service.dto;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class SysRoleDto {
/**
* 主键id
*/
private Long id;
/**
* 角色唯一标识(业务ID)
*/
private String roleBizId;
/**
* 角色名称
*/
private String roleName;
/**
* 查询是否排除当前角色唯一标识数据,默认false不排除,true的话roleBizId必传
*/
private Boolean isExcludeMy = false;
} }
...@@ -22,7 +22,7 @@ public class SysTenantDto { ...@@ -22,7 +22,7 @@ public class SysTenantDto {
/** /**
* 租户唯一标识(业务ID) * 租户唯一标识(业务ID)
*/ */
private String tenantUid; private String tenantBizId;
/** /**
* 租户名称 * 租户名称
...@@ -35,7 +35,7 @@ public class SysTenantDto { ...@@ -35,7 +35,7 @@ public class SysTenantDto {
private Integer status; private Integer status;
/** /**
* 查询是否排除当前租户唯一标识数据,默认false不排除,true的话tenantUid必传 * 查询是否排除当前租户唯一标识数据,默认false不排除,true的话tenantBizId必传
*/ */
private Boolean isExcludeMy = false; private Boolean isExcludeMy = false;
} }
package com.yd.user.service.dto;public class SysUserDto { package com.yd.user.service.dto;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* 用户公共参数对象
*/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class SysUserDto {
/**
* 用户ID
*/
private Long id;
/**
* 用户唯一标识(业务ID)
*/
private String userBizId;
/**
* 登录账号
*/
private String userName;
/**
* 邮箱
*/
private String email;
/**
* 手机号
*/
private String mobile;
/**
* 状态(0:禁用 1:正常 2:锁定)
*/
private Integer status;
/**
* 是否超级管理员(0:否 1:是)
*/
private Integer isSuperAdmin;
/**
* 查询是否排除当前用户唯一标识数据,默认false不排除,true的话userBizId必传
*/
private Boolean isExcludeMy = false;
} }
...@@ -33,14 +33,14 @@ public class RelDeptUser implements Serializable { ...@@ -33,14 +33,14 @@ public class RelDeptUser implements Serializable {
/** /**
* 部门ID(业务id) * 部门ID(业务id)
*/ */
@TableField("dept_id") @TableField("dept_biz_id")
private String deptId; private String deptBizId;
/** /**
* 用户ID(业务id) * 用户ID(业务id)
*/ */
@TableField("user_id") @TableField("user_biz_id")
private String userId; private String userBizId;
/** /**
* 状态(0:禁用 1:启用) * 状态(0:禁用 1:启用)
......
...@@ -33,14 +33,14 @@ public class RelGroupRole implements Serializable { ...@@ -33,14 +33,14 @@ public class RelGroupRole implements Serializable {
/** /**
* 用户组ID(业务id) * 用户组ID(业务id)
*/ */
@TableField("group_id") @TableField("group_biz_id")
private String groupId; private String groupBizId;
/** /**
* 角色ID(业务id) * 角色ID(业务id)
*/ */
@TableField("role_id") @TableField("role_biz_id")
private String roleId; private String roleBizId;
/** /**
* 状态(0:禁用 1:启用) * 状态(0:禁用 1:启用)
......
...@@ -33,14 +33,14 @@ public class RelGroupUser implements Serializable { ...@@ -33,14 +33,14 @@ public class RelGroupUser implements Serializable {
/** /**
* 用户组ID(业务id) * 用户组ID(业务id)
*/ */
@TableField("group_id") @TableField("group_biz_id")
private String groupId; private String groupBizId;
/** /**
* 用户ID(业务id) * 用户ID(业务id)
*/ */
@TableField("user_id") @TableField("user_biz_id")
private String userId; private String userBizId;
/** /**
* 状态(0:禁用 1:启用) * 状态(0:禁用 1:启用)
......
...@@ -33,14 +33,14 @@ public class RelProjectMenu implements Serializable { ...@@ -33,14 +33,14 @@ public class RelProjectMenu implements Serializable {
/** /**
* 项目ID(业务id) * 项目ID(业务id)
*/ */
@TableField("project_id") @TableField("project_biz_id")
private String projectId; private String projectBizId;
/** /**
* 菜单ID(业务id) * 菜单ID(业务id)
*/ */
@TableField("menu_id") @TableField("menu_biz_id")
private String menuId; private String menuBizId;
/** /**
* 状态(0:禁用 1:启用) * 状态(0:禁用 1:启用)
......
...@@ -33,14 +33,14 @@ public class RelProjectRole implements Serializable { ...@@ -33,14 +33,14 @@ public class RelProjectRole implements Serializable {
/** /**
* 项目ID(业务id) * 项目ID(业务id)
*/ */
@TableField("project_id") @TableField("project_biz_id")
private String projectId; private String projectBizId;
/** /**
* 角色ID(业务id) * 角色ID(业务id)
*/ */
@TableField("role_id") @TableField("role_biz_id")
private String roleId; private String roleBizId;
/** /**
* 状态(0:禁用 1:启用) * 状态(0:禁用 1:启用)
......
...@@ -33,14 +33,14 @@ public class RelProjectUser implements Serializable { ...@@ -33,14 +33,14 @@ public class RelProjectUser implements Serializable {
/** /**
* 项目ID(业务id) * 项目ID(业务id)
*/ */
@TableField("project_id") @TableField("project_biz_id")
private String projectId; private String projectBizId;
/** /**
* 用户ID(业务id) * 用户ID(业务id)
*/ */
@TableField("user_id") @TableField("user_biz_id")
private String userId; private String userBizId;
/** /**
* 状态(0:禁用 1:启用) * 状态(0:禁用 1:启用)
......
...@@ -33,14 +33,14 @@ public class RelProjectUserGroup implements Serializable { ...@@ -33,14 +33,14 @@ public class RelProjectUserGroup implements Serializable {
/** /**
* 项目ID(业务id) * 项目ID(业务id)
*/ */
@TableField("project_id") @TableField("project_biz_id")
private String projectId; private String projectBizId;
/** /**
* 用户组(业务id) * 用户组(业务id)
*/ */
@TableField("group_id") @TableField("group_biz_id")
private String groupId; private String groupBizId;
/** /**
* 状态(0:禁用 1:启用) * 状态(0:禁用 1:启用)
......
...@@ -33,26 +33,26 @@ public class RelRoleMenu implements Serializable { ...@@ -33,26 +33,26 @@ public class RelRoleMenu implements Serializable {
/** /**
* 租户ID(业务id)(冗余字段,目的当前关系是发生在哪个作用域下:租户级) * 租户ID(业务id)(冗余字段,目的当前关系是发生在哪个作用域下:租户级)
*/ */
@TableField("tenant_id") @TableField("tenant_biz_id")
private String tenantId; private String tenantBizId;
/** /**
* 项目ID(业务id)(冗余字段,目的当前关系是发生在哪个作用域下:项目级) * 项目ID(业务id)(冗余字段,目的当前关系是发生在哪个作用域下:项目级)
*/ */
@TableField("project_id") @TableField("project_biz_id")
private String projectId; private String projectBizId;
/** /**
* 角色ID(业务id) * 角色ID(业务id)
*/ */
@TableField("role_id") @TableField("role_biz_id")
private String roleId; private String roleBizId;
/** /**
* 菜单ID(业务id) * 菜单ID(业务id)
*/ */
@TableField("menu_id") @TableField("menu_biz_id")
private String menuId; private String menuBizId;
/** /**
* 状态(0:禁用 1:启用) * 状态(0:禁用 1:启用)
......
...@@ -33,14 +33,14 @@ public class RelTenantDept implements Serializable { ...@@ -33,14 +33,14 @@ public class RelTenantDept implements Serializable {
/** /**
* 租户ID(业务id) * 租户ID(业务id)
*/ */
@TableField("tenant_id") @TableField("tenant_biz_id")
private String tenantId; private String tenantBizId;
/** /**
* 部门ID(业务id) * 部门ID(业务id)
*/ */
@TableField("dept_id") @TableField("dept_biz_id")
private String deptId; private String deptBizId;
/** /**
* 状态(0:禁用 1:启用) * 状态(0:禁用 1:启用)
......
...@@ -33,14 +33,14 @@ public class RelTenantMenu implements Serializable { ...@@ -33,14 +33,14 @@ public class RelTenantMenu implements Serializable {
/** /**
* 租户ID(业务id) * 租户ID(业务id)
*/ */
@TableField("tenant_id") @TableField("tenant_biz_id")
private String tenantId; private String tenantBizId;
/** /**
* 菜单ID(业务id) * 菜单ID(业务id)
*/ */
@TableField("menu_id") @TableField("menu_biz_id")
private String menuId; private String menuBizId;
/** /**
* 状态(0:禁用 1:启用) * 状态(0:禁用 1:启用)
......
...@@ -33,14 +33,14 @@ public class RelTenantProject implements Serializable { ...@@ -33,14 +33,14 @@ public class RelTenantProject implements Serializable {
/** /**
* 租户ID(业务id) * 租户ID(业务id)
*/ */
@TableField("tenant_id") @TableField("tenant_biz_id")
private String tenantId; private String tenantBizId;
/** /**
* 项目ID(业务id) * 项目ID(业务id)
*/ */
@TableField("project_id") @TableField("project_biz_id")
private String projectId; private String projectBizId;
/** /**
* 状态(0:禁用 1:启用) * 状态(0:禁用 1:启用)
......
...@@ -33,14 +33,14 @@ public class RelTenantRole implements Serializable { ...@@ -33,14 +33,14 @@ public class RelTenantRole implements Serializable {
/** /**
* 租户ID(业务id) * 租户ID(业务id)
*/ */
@TableField("tenant_id") @TableField("tenant_biz_id")
private String tenantId; private String tenantBizId;
/** /**
* 角色ID(业务id) * 角色ID(业务id)
*/ */
@TableField("role_id") @TableField("role_biz_id")
private String roleId; private String roleBizId;
/** /**
* 状态(0:禁用 1:启用) * 状态(0:禁用 1:启用)
......
...@@ -33,14 +33,14 @@ public class RelTenantUser implements Serializable { ...@@ -33,14 +33,14 @@ public class RelTenantUser implements Serializable {
/** /**
* 租户ID(业务id) * 租户ID(业务id)
*/ */
@TableField("tenant_id") @TableField("tenant_biz_id")
private String tenantId; private String tenantBizId;
/** /**
* 用户ID(业务id) * 用户ID(业务id)
*/ */
@TableField("user_id") @TableField("user_biz_id")
private String userId; private String userBizId;
/** /**
* 状态(0:禁用 1:启用) * 状态(0:禁用 1:启用)
......
...@@ -33,14 +33,14 @@ public class RelTenantUserGroup implements Serializable { ...@@ -33,14 +33,14 @@ public class RelTenantUserGroup implements Serializable {
/** /**
* 租户ID(业务id) * 租户ID(业务id)
*/ */
@TableField("tenant_id") @TableField("tenant_biz_id")
private String tenantId; private String tenantBizId;
/** /**
* 用户组(业务id) * 用户组(业务id)
*/ */
@TableField("group_id") @TableField("group_biz_id")
private String groupId; private String groupBizId;
/** /**
* 状态(0:禁用 1:启用) * 状态(0:禁用 1:启用)
......
...@@ -33,26 +33,26 @@ public class RelUserRole implements Serializable { ...@@ -33,26 +33,26 @@ public class RelUserRole implements Serializable {
/** /**
* 租户ID(业务id)(冗余字段,目的当前关系是发生在哪个作用域下:租户级) * 租户ID(业务id)(冗余字段,目的当前关系是发生在哪个作用域下:租户级)
*/ */
@TableField("tenant_id") @TableField("tenant_biz_id")
private String tenantId; private String tenantBizId;
/** /**
* 项目ID(业务id)(冗余字段,目的当前关系是发生在哪个作用域下:项目级) * 项目ID(业务id)(冗余字段,目的当前关系是发生在哪个作用域下:项目级)
*/ */
@TableField("project_id") @TableField("project_biz_id")
private String projectId; private String projectBizId;
/** /**
* 用户ID(业务id) * 用户ID(业务id)
*/ */
@TableField("user_id") @TableField("user_biz_id")
private String userId; private String userBizId;
/** /**
* 角色ID(业务id) * 角色ID(业务id)
*/ */
@TableField("role_id") @TableField("role_biz_id")
private String roleId; private String roleBizId;
/** /**
* 状态(0:禁用 1:启用) * 状态(0:禁用 1:启用)
......
...@@ -33,8 +33,8 @@ public class SysDept implements Serializable { ...@@ -33,8 +33,8 @@ public class SysDept implements Serializable {
/** /**
* 部门唯一标识(业务ID) * 部门唯一标识(业务ID)
*/ */
@TableField("dept_uid") @TableField("dept_biz_id")
private String deptUid; private String deptBizId;
/** /**
* 类型(1:部门 2:公司) * 类型(1:部门 2:公司)
...@@ -51,8 +51,8 @@ public class SysDept implements Serializable { ...@@ -51,8 +51,8 @@ public class SysDept implements Serializable {
/** /**
* 父部门ID * 父部门ID
*/ */
@TableField("parent_id") @TableField("parent_biz_id")
private Long parentId; private Long parentBizId;
/** /**
* 父子级列表(点符号拼接) * 父子级列表(点符号拼接)
......
...@@ -33,8 +33,8 @@ public class SysDict implements Serializable { ...@@ -33,8 +33,8 @@ public class SysDict implements Serializable {
/** /**
* 字典唯一标识(业务ID) * 字典唯一标识(业务ID)
*/ */
@TableField("dict_uid") @TableField("dict_biz_id")
private String dictUid; private String dictBizId;
/** /**
* 字典名称 * 字典名称
......
...@@ -33,8 +33,8 @@ public class SysDictItem implements Serializable { ...@@ -33,8 +33,8 @@ public class SysDictItem implements Serializable {
/** /**
* 字典ID(字典类型表id) * 字典ID(字典类型表id)
*/ */
@TableField("dict_id") @TableField("dict_biz_id")
private Long dictId; private Long dictBizId;
/** /**
* 字典项标签(名称) * 字典项标签(名称)
......
...@@ -39,8 +39,8 @@ public class SysLoginLog implements Serializable { ...@@ -39,8 +39,8 @@ public class SysLoginLog implements Serializable {
/** /**
* 登录账号 * 登录账号
*/ */
@TableField("username") @TableField("user_name")
private String username; private String userName;
/** /**
* 登录IP * 登录IP
...@@ -93,14 +93,14 @@ public class SysLoginLog implements Serializable { ...@@ -93,14 +93,14 @@ public class SysLoginLog implements Serializable {
/** /**
* 所属租户ID * 所属租户ID
*/ */
@TableField("tenant_id") @TableField("tenant_biz_id")
private String tenantId; private String tenantBizId;
/** /**
* 所属项目ID * 所属项目ID
*/ */
@TableField("project_id") @TableField("project_biz_id")
private String projectId; private String projectBizId;
/** /**
* 通用备注 * 通用备注
......
...@@ -33,20 +33,14 @@ public class SysMenu implements Serializable { ...@@ -33,20 +33,14 @@ public class SysMenu implements Serializable {
/** /**
* 菜单唯一标识(业务ID) * 菜单唯一标识(业务ID)
*/ */
@TableField("menu_uid") @TableField("menu_biz_id")
private String menuUid; private String menuBizId;
/** /**
* 父菜单ID * 父菜单ID
*/ */
@TableField("parent_id") @TableField("parent_biz_id")
private Long parentId; private String parentBizId;
/**
* 作用域(1:系统级(全局) 2:租户级 3:项目级)
*/
@TableField("scope")
private Integer scope;
/** /**
* 菜单名称 * 菜单名称
...@@ -115,6 +109,24 @@ public class SysMenu implements Serializable { ...@@ -115,6 +109,24 @@ public class SysMenu implements Serializable {
private Integer status; private Integer status;
/** /**
* 作用域(1:系统级(全局) 2:租户级 3:项目级)
*/
@TableField("scope")
private Integer scope;
/**
* 所属租户ID(业务id)
*/
@TableField("tenant_biz_id")
private String tenantBizId;
/**
* 所属项目ID(业务id)
*/
@TableField("project_biz_id")
private String projectBizId;
/**
* 通用备注 * 通用备注
*/ */
@TableField("remark") @TableField("remark")
......
...@@ -63,8 +63,8 @@ public class SysOperLog implements Serializable { ...@@ -63,8 +63,8 @@ public class SysOperLog implements Serializable {
/** /**
* 操作人员ID * 操作人员ID
*/ */
@TableField("oper_user_id") @TableField("oper_user_biz_id")
private String operUserId; private String operUserBizId;
/** /**
* 操作人员 * 操作人员
...@@ -123,14 +123,14 @@ public class SysOperLog implements Serializable { ...@@ -123,14 +123,14 @@ public class SysOperLog implements Serializable {
/** /**
* 所属租户ID * 所属租户ID
*/ */
@TableField("tenant_id") @TableField("tenant_biz_id")
private String tenantId; private String tenantBizId;
/** /**
* 所属项目ID * 所属项目ID
*/ */
@TableField("project_id") @TableField("project_biz_id")
private String projectId; private String projectBizId;
/** /**
* 通用备注 * 通用备注
......
...@@ -33,8 +33,8 @@ public class SysPost implements Serializable { ...@@ -33,8 +33,8 @@ public class SysPost implements Serializable {
/** /**
* 岗位唯一标识(业务ID) * 岗位唯一标识(业务ID)
*/ */
@TableField("post_uid") @TableField("post_biz_id")
private String postUid; private String postBizId;
/** /**
* 岗位名称 * 岗位名称
......
...@@ -22,7 +22,7 @@ import java.time.LocalDateTime; ...@@ -22,7 +22,7 @@ import java.time.LocalDateTime;
@Getter @Getter
@Setter @Setter
@ToString @ToString
@TableName("yd_sys_project") @TableName("sys_project")
public class SysProject implements Serializable { public class SysProject implements Serializable {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
...@@ -36,8 +36,14 @@ public class SysProject implements Serializable { ...@@ -36,8 +36,14 @@ public class SysProject implements Serializable {
/** /**
* 项目唯一标识(业务ID) * 项目唯一标识(业务ID)
*/ */
@TableField("project_uid") @TableField("project_biz_id")
private String projectUid; private String projectBizId;
/**
* 作用域(1:系统级(全局) 2:租户级 )
*/
@TableField("scope")
private Integer scope;
/** /**
* 项目名称 * 项目名称
...@@ -76,6 +82,12 @@ public class SysProject implements Serializable { ...@@ -76,6 +82,12 @@ public class SysProject implements Serializable {
private LocalDateTime endTime; private LocalDateTime endTime;
/** /**
* 所属租户ID(业务id)
*/
@TableField("tenant_biz_id")
private String tenantBizId;
/**
* 通用备注 * 通用备注
*/ */
@TableField("remark") @TableField("remark")
......
...@@ -33,8 +33,8 @@ public class SysRole implements Serializable { ...@@ -33,8 +33,8 @@ public class SysRole implements Serializable {
/** /**
* 角色唯一标识(业务ID) * 角色唯一标识(业务ID)
*/ */
@TableField("role_uid") @TableField("role_biz_id")
private String roleUid; private String roleBizId;
/** /**
* 角色名称 * 角色名称
...@@ -49,12 +49,6 @@ public class SysRole implements Serializable { ...@@ -49,12 +49,6 @@ public class SysRole implements Serializable {
private String roleKey; private String roleKey;
/** /**
* 作用域(1:系统级(全局) 2:租户级 3:项目级)
*/
@TableField("scope")
private Integer scope;
/**
* 角色类型(1:超级管理员 2:管理员 3:普通用户) * 角色类型(1:超级管理员 2:管理员 3:普通用户)
*/ */
@TableField("role_type") @TableField("role_type")
...@@ -73,6 +67,24 @@ public class SysRole implements Serializable { ...@@ -73,6 +67,24 @@ public class SysRole implements Serializable {
private Integer status; private Integer status;
/** /**
* 作用域(1:系统级(全局) 2:租户级 3:项目级)
*/
@TableField("scope")
private Integer scope;
/**
* 所属租户ID(业务id)
*/
@TableField("tenant_biz_id")
private String tenantBizId;
/**
* 所属项目ID(业务id)
*/
@TableField("project_biz_id")
private String projectBizId;
/**
* 通用备注 * 通用备注
*/ */
@TableField("remark") @TableField("remark")
......
...@@ -36,8 +36,8 @@ public class SysTenant implements Serializable { ...@@ -36,8 +36,8 @@ public class SysTenant implements Serializable {
/** /**
* 租户唯一标识(业务ID) * 租户唯一标识(业务ID)
*/ */
@TableField("tenant_uid") @TableField("tenant_biz_id")
private String tenantUid; private String tenantBizId;
/** /**
* 租户名称 * 租户名称
......
...@@ -36,14 +36,14 @@ public class SysUser implements Serializable { ...@@ -36,14 +36,14 @@ public class SysUser implements Serializable {
/** /**
* 用户唯一标识(业务ID) * 用户唯一标识(业务ID)
*/ */
@TableField("user_uid") @TableField("user_biz_id")
private String userUid; private String userBizId;
/** /**
* 登录账号 * 登录账号
*/ */
@TableField("username") @TableField("user_name")
private String username; private String userName;
/** /**
* 加密密码 * 加密密码
...@@ -102,8 +102,8 @@ public class SysUser implements Serializable { ...@@ -102,8 +102,8 @@ public class SysUser implements Serializable {
/** /**
* 是否超级管理员(0:否 1:是) * 是否超级管理员(0:否 1:是)
*/ */
@TableField("is_superadmin") @TableField("is_super_admin")
private Integer isSuperadmin; private Integer isSuperAdmin;
/** /**
* 最后登录IP * 最后登录IP
......
...@@ -33,8 +33,8 @@ public class SysUserGroup implements Serializable { ...@@ -33,8 +33,8 @@ public class SysUserGroup implements Serializable {
/** /**
* 用户组唯一标识(业务ID) * 用户组唯一标识(业务ID)
*/ */
@TableField("group_uid") @TableField("group_biz_id")
private String groupUid; private String groupBizId;
/** /**
* 用户组名称 * 用户组名称
...@@ -45,8 +45,8 @@ public class SysUserGroup implements Serializable { ...@@ -45,8 +45,8 @@ public class SysUserGroup implements Serializable {
/** /**
* 父用户组ID * 父用户组ID
*/ */
@TableField("parent_id") @TableField("parent_biz_id")
private Long parentId; private Long parentBizId;
/** /**
* 父子级列表(点符号拼接) * 父子级列表(点符号拼接)
......
package com.yd.user.service.service; package com.yd.user.service.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yd.user.feign.request.relprojectrole.ApiRelProjectRoleListPageRequest;
import com.yd.user.feign.request.relprojectrole.ApiRelProjectRoleSelectPageRequest;
import com.yd.user.feign.response.relprojectrole.ApiRelProjectRoleListPageResponse;
import com.yd.user.feign.response.relprojectrole.ApiRelProjectRoleSelectPageResponse;
import com.yd.user.service.model.RelProjectRole; import com.yd.user.service.model.RelProjectRole;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import com.yd.user.service.model.RelTenantRole;
/** /**
* <p> * <p>
...@@ -13,4 +20,11 @@ import com.baomidou.mybatisplus.extension.service.IService; ...@@ -13,4 +20,11 @@ import com.baomidou.mybatisplus.extension.service.IService;
*/ */
public interface IRelProjectRoleService extends IService<RelProjectRole> { public interface IRelProjectRoleService extends IService<RelProjectRole> {
IPage<ApiRelProjectRoleListPageResponse> page(Page<ApiRelProjectRoleListPageResponse> page,
ApiRelProjectRoleListPageRequest request);
IPage<ApiRelProjectRoleSelectPageResponse> selectProjectPage(Page<ApiRelProjectRoleSelectPageResponse> page,
ApiRelProjectRoleSelectPageRequest request);
RelProjectRole queryOne(Long id);
} }
package com.yd.user.service.service; package com.yd.user.service.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yd.user.feign.request.relprojectuser.ApiRelProjectUserListPageRequest;
import com.yd.user.feign.request.relprojectuser.ApiRelProjectUserSelectPageRequest;
import com.yd.user.feign.response.relprojectuser.ApiRelProjectUserListPageResponse;
import com.yd.user.feign.response.relprojectuser.ApiRelProjectUserSelectPageResponse;
import com.yd.user.service.model.RelProjectUser; import com.yd.user.service.model.RelProjectUser;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import com.yd.user.service.model.RelTenantUser;
/** /**
* <p> * <p>
...@@ -13,4 +20,11 @@ import com.baomidou.mybatisplus.extension.service.IService; ...@@ -13,4 +20,11 @@ import com.baomidou.mybatisplus.extension.service.IService;
*/ */
public interface IRelProjectUserService extends IService<RelProjectUser> { public interface IRelProjectUserService extends IService<RelProjectUser> {
IPage<ApiRelProjectUserListPageResponse> page(Page<ApiRelProjectUserListPageResponse> page,
ApiRelProjectUserListPageRequest request);
IPage<ApiRelProjectUserSelectPageResponse> selectUserPage(Page<ApiRelProjectUserSelectPageResponse> page,
ApiRelProjectUserSelectPageRequest request);
RelProjectUser queryOne(Long id);
} }
package com.yd.user.service.service; package com.yd.user.service.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yd.user.feign.request.reltenantmenu.ApiRelTenantMenuListPageRequest;
import com.yd.user.feign.request.reltenantmenu.ApiRelTenantMenuSelectPageRequest;
import com.yd.user.feign.request.reltenantrole.ApiRelTenantRoleListPageRequest;
import com.yd.user.feign.request.reltenantrole.ApiRelTenantRoleSelectPageRequest;
import com.yd.user.feign.response.reltenantmenu.ApiRelTenantMenuListPageResponse;
import com.yd.user.feign.response.reltenantmenu.ApiRelTenantMenuSelectPageResponse;
import com.yd.user.feign.response.reltenantrole.ApiRelTenantRoleListPageResponse;
import com.yd.user.feign.response.reltenantrole.ApiRelTenantRoleSelectPageResponse;
import com.yd.user.service.model.RelTenantMenu; import com.yd.user.service.model.RelTenantMenu;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import com.yd.user.service.model.RelTenantRole;
/** /**
* <p> * <p>
...@@ -13,4 +24,11 @@ import com.baomidou.mybatisplus.extension.service.IService; ...@@ -13,4 +24,11 @@ import com.baomidou.mybatisplus.extension.service.IService;
*/ */
public interface IRelTenantMenuService extends IService<RelTenantMenu> { public interface IRelTenantMenuService extends IService<RelTenantMenu> {
IPage<ApiRelTenantMenuListPageResponse> page(Page<ApiRelTenantMenuListPageResponse> page,
ApiRelTenantMenuListPageRequest request);
IPage<ApiRelTenantMenuSelectPageResponse> selectProjectPage(Page<ApiRelTenantMenuSelectPageResponse> page,
ApiRelTenantMenuSelectPageRequest request);
RelTenantMenu queryOne(Long id);
} }
package com.yd.user.service.service; package com.yd.user.service.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectListPageRequest;
import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectSelectPageRequest;
import com.yd.user.feign.response.reltenantproject.ApiRelTenantProjectListPageResponse;
import com.yd.user.feign.response.reltenantproject.ApiRelTenantProjectSelectPageResponse;
import com.yd.user.service.dto.RelTenantProjectDto;
import com.yd.user.service.dto.SysTenantDto;
import com.yd.user.service.model.RelTenantProject; import com.yd.user.service.model.RelTenantProject;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import com.yd.user.service.model.SysTenant;
import com.yd.user.service.model.SysUser;
import java.util.List;
/** /**
* <p> * <p>
...@@ -13,4 +25,21 @@ import com.baomidou.mybatisplus.extension.service.IService; ...@@ -13,4 +25,21 @@ import com.baomidou.mybatisplus.extension.service.IService;
*/ */
public interface IRelTenantProjectService extends IService<RelTenantProject> { public interface IRelTenantProjectService extends IService<RelTenantProject> {
IPage<ApiRelTenantProjectListPageResponse> page(Page<ApiRelTenantProjectListPageResponse> page,
ApiRelTenantProjectListPageRequest request);
IPage<ApiRelTenantProjectSelectPageResponse> selectProjectPage(Page<ApiRelTenantProjectSelectPageResponse> page,
ApiRelTenantProjectSelectPageRequest request);
RelTenantProject queryOne(Long id);
RelTenantProject queryOne(String tenantBizId, String projectBizId);
List<RelTenantProject> queryList(RelTenantProjectDto dto);
void delRelByProjectBizId(String projectBizId);
void delRelByProjectBizIdNeTenantBizIdList(String projectBizId, List<String> tenantBizIdList);
void delRelByTenantBizId(String tenantBizId);
} }
package com.yd.user.service.service; package com.yd.user.service.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yd.user.feign.request.reltenantrole.ApiRelTenantRoleListPageRequest;
import com.yd.user.feign.request.reltenantrole.ApiRelTenantRoleSelectPageRequest;
import com.yd.user.feign.response.reltenantrole.ApiRelTenantRoleListPageResponse;
import com.yd.user.feign.response.reltenantrole.ApiRelTenantRoleSelectPageResponse;
import com.yd.user.service.model.RelTenantProject;
import com.yd.user.service.model.RelTenantRole; import com.yd.user.service.model.RelTenantRole;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
...@@ -13,4 +20,11 @@ import com.baomidou.mybatisplus.extension.service.IService; ...@@ -13,4 +20,11 @@ import com.baomidou.mybatisplus.extension.service.IService;
*/ */
public interface IRelTenantRoleService extends IService<RelTenantRole> { public interface IRelTenantRoleService extends IService<RelTenantRole> {
IPage<ApiRelTenantRoleListPageResponse> page(Page<ApiRelTenantRoleListPageResponse> page,
ApiRelTenantRoleListPageRequest request);
RelTenantRole queryOne(Long id);
IPage<ApiRelTenantRoleSelectPageResponse> selectProjectPage(Page<ApiRelTenantRoleSelectPageResponse> page,
ApiRelTenantRoleSelectPageRequest request);
} }
package com.yd.user.service.service; package com.yd.user.service.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yd.user.feign.request.reltenantuser.ApiRelTenantUserListPageRequest;
import com.yd.user.feign.request.reltenantuser.ApiRelTenantUserSelectPageRequest;
import com.yd.user.feign.response.reltenantuser.ApiRelTenantUserListPageResponse;
import com.yd.user.feign.response.reltenantuser.ApiRelTenantUserSelectPageResponse;
import com.yd.user.service.model.RelTenantRole;
import com.yd.user.service.model.RelTenantUser; import com.yd.user.service.model.RelTenantUser;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
...@@ -13,4 +20,11 @@ import com.baomidou.mybatisplus.extension.service.IService; ...@@ -13,4 +20,11 @@ import com.baomidou.mybatisplus.extension.service.IService;
*/ */
public interface IRelTenantUserService extends IService<RelTenantUser> { public interface IRelTenantUserService extends IService<RelTenantUser> {
IPage<ApiRelTenantUserListPageResponse> page(Page<ApiRelTenantUserListPageResponse> page,
ApiRelTenantUserListPageRequest request);
IPage<ApiRelTenantUserSelectPageResponse> selectUserPage(Page<ApiRelTenantUserSelectPageResponse> page,
ApiRelTenantUserSelectPageRequest request);
RelTenantUser queryOne(Long id);
} }
package com.yd.user.service.service; package com.yd.user.service.service;
import com.yd.user.feign.response.reluserrole.ApiSelectedProjectUserRoleListResponse;
import com.yd.user.feign.response.reluserrole.ApiSelectedTenantUserRoleListResponse;
import com.yd.user.service.model.RelUserRole; import com.yd.user.service.model.RelUserRole;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import java.util.List;
/** /**
* <p> * <p>
* 用户-角色关系表(多对多关系) 服务类 * 用户-角色关系表(多对多关系) 服务类
...@@ -13,4 +17,11 @@ import com.baomidou.mybatisplus.extension.service.IService; ...@@ -13,4 +17,11 @@ import com.baomidou.mybatisplus.extension.service.IService;
*/ */
public interface IRelUserRoleService extends IService<RelUserRole> { public interface IRelUserRoleService extends IService<RelUserRole> {
void delRelTenantUserRole(String tenantBizId,String userBizId);
void delRelProjectUserRole(String projectBizId,String userBizId);
List<ApiSelectedTenantUserRoleListResponse> selectedTenantUserRoleList(String tenantBizId, String userBizId);
List<ApiSelectedProjectUserRoleListResponse> selectedProjectUserRoleList(String projectBizId, String userBizId);
} }
package com.yd.user.service.service; package com.yd.user.service.service;
import com.yd.user.service.dto.SysMenuDto;
import com.yd.user.service.dto.SysRoleDto;
import com.yd.user.service.model.SysMenu; import com.yd.user.service.model.SysMenu;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import com.yd.user.service.model.SysRole;
import java.util.List;
/** /**
* <p> * <p>
...@@ -13,4 +18,7 @@ import com.baomidou.mybatisplus.extension.service.IService; ...@@ -13,4 +18,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
*/ */
public interface ISysMenuService extends IService<SysMenu> { public interface ISysMenuService extends IService<SysMenu> {
SysMenu queryOne(String menuBizId);
List<SysMenu> queryList(SysMenuDto dto);
} }
package com.yd.user.service.service; package com.yd.user.service.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yd.user.feign.request.sysproject.ApiSysProjectPageRequest;
import com.yd.user.feign.response.sysproject.ApiSysProjectPageResponse;
import com.yd.user.service.dto.SysProjectDto;
import com.yd.user.service.dto.SysTenantDto;
import com.yd.user.service.model.SysProject; import com.yd.user.service.model.SysProject;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import com.yd.user.service.model.SysTenant;
import com.yd.user.service.model.SysUser;
import java.util.List;
/** /**
* <p> * <p>
...@@ -13,4 +23,11 @@ import com.baomidou.mybatisplus.extension.service.IService; ...@@ -13,4 +23,11 @@ import com.baomidou.mybatisplus.extension.service.IService;
*/ */
public interface ISysProjectService extends IService<SysProject> { public interface ISysProjectService extends IService<SysProject> {
IPage<ApiSysProjectPageResponse> page(Page<ApiSysProjectPageResponse> page,
ApiSysProjectPageRequest request,
Boolean isAdmin,String loginTenantBizId);
SysProject queryOne(String projectBizId);
List<SysProject> queryList(SysProjectDto dto);
} }
package com.yd.user.service.service; package com.yd.user.service.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yd.user.feign.request.sysrole.ApiSysRolePageRequest;
import com.yd.user.feign.response.sysrole.ApiSysRolePageResponse;
import com.yd.user.service.dto.SysRoleDto;
import com.yd.user.service.dto.SysTenantDto;
import com.yd.user.service.model.SysProject;
import com.yd.user.service.model.SysRole; import com.yd.user.service.model.SysRole;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import com.yd.user.service.model.SysTenant;
import java.util.List;
/** /**
* <p> * <p>
...@@ -13,4 +23,13 @@ import com.baomidou.mybatisplus.extension.service.IService; ...@@ -13,4 +23,13 @@ import com.baomidou.mybatisplus.extension.service.IService;
*/ */
public interface ISysRoleService extends IService<SysRole> { public interface ISysRoleService extends IService<SysRole> {
IPage<ApiSysRolePageResponse> page(Page<ApiSysRolePageResponse> page,
ApiSysRolePageRequest request,
Boolean isAdmin,
List<String> projectBizIdList,
String loginTenantBizId);
SysRole queryOne(String roleBizId);
List<SysRole> queryList(SysRoleDto dto);
} }
...@@ -22,9 +22,13 @@ import java.util.List; ...@@ -22,9 +22,13 @@ import java.util.List;
*/ */
public interface ISysTenantService extends IService<SysTenant> { public interface ISysTenantService extends IService<SysTenant> {
IPage<ApiSysTenantPageResponse> page(Page<ApiSysTenantPageResponse> page, ApiSysTenantPageRequest request); IPage<ApiSysTenantPageResponse> page(Page<ApiSysTenantPageResponse> page,
ApiSysTenantPageRequest request,
Boolean isAdmin,
String userBizId,
String loginTenantBizId);
SysTenant queryOne(String tenantUid); SysTenant queryOne(String tenantBizId);
List<SysTenant> queryList(SysTenantDto dto); List<SysTenant> queryList(SysTenantDto dto);
} }
...@@ -5,10 +5,15 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; ...@@ -5,10 +5,15 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yd.common.result.Result; import com.yd.common.result.Result;
import com.yd.user.feign.request.sysuser.ApiSysUserPageRequest; import com.yd.user.feign.request.sysuser.ApiSysUserPageRequest;
import com.yd.user.feign.response.sysuser.ApiSysUserPageResponse; import com.yd.user.feign.response.sysuser.ApiSysUserPageResponse;
import com.yd.user.service.dto.SysRoleDto;
import com.yd.user.service.dto.SysUserDto;
import com.yd.user.service.model.SysRole;
import com.yd.user.service.model.SysUser; import com.yd.user.service.model.SysUser;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import org.springframework.security.core.userdetails.UserDetails; import org.springframework.security.core.userdetails.UserDetails;
import java.util.List;
/** /**
* <p> * <p>
* 系统用户表 服务类 * 系统用户表 服务类
...@@ -19,10 +24,14 @@ import org.springframework.security.core.userdetails.UserDetails; ...@@ -19,10 +24,14 @@ import org.springframework.security.core.userdetails.UserDetails;
*/ */
public interface ISysUserService extends IService<SysUser> { public interface ISysUserService extends IService<SysUser> {
IPage<ApiSysUserPageResponse> page(Page<ApiSysUserPageResponse> page, ApiSysUserPageRequest request); IPage<ApiSysUserPageResponse> page(Page<ApiSysUserPageResponse> page,
ApiSysUserPageRequest request,
Boolean isAdmin,
String loginTenantBizId);
SysUser queryOne(String userUid); SysUser queryOne(String userBizId);
SysUser queryOneByName(String username); SysUser queryOneByName(String userName);
List<SysUser> queryList(SysUserDto dto);
} }
package com.yd.user.service.service.impl; package com.yd.user.service.service.impl;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yd.user.feign.request.relprojectrole.ApiRelProjectRoleListPageRequest;
import com.yd.user.feign.request.relprojectrole.ApiRelProjectRoleSelectPageRequest;
import com.yd.user.feign.response.relprojectrole.ApiRelProjectRoleListPageResponse;
import com.yd.user.feign.response.relprojectrole.ApiRelProjectRoleSelectPageResponse;
import com.yd.user.service.model.RelProjectRole; import com.yd.user.service.model.RelProjectRole;
import com.yd.user.service.dao.RelProjectRoleMapper; import com.yd.user.service.dao.RelProjectRoleMapper;
import com.yd.user.service.service.IRelProjectRoleService; import com.yd.user.service.service.IRelProjectRoleService;
...@@ -17,4 +23,35 @@ import org.springframework.stereotype.Service; ...@@ -17,4 +23,35 @@ import org.springframework.stereotype.Service;
@Service @Service
public class RelProjectRoleServiceImpl extends ServiceImpl<RelProjectRoleMapper, RelProjectRole> implements IRelProjectRoleService { public class RelProjectRoleServiceImpl extends ServiceImpl<RelProjectRoleMapper, RelProjectRole> implements IRelProjectRoleService {
/**
* 项目和角色关系分页查询
* @param request
* @return
*/
@Override
public IPage<ApiRelProjectRoleListPageResponse> page(Page<ApiRelProjectRoleListPageResponse> page, ApiRelProjectRoleListPageRequest request) {
return baseMapper.page(page,request);
}
/**
* 导入-选择角色分页查询(查询当前项目级(当前所属项目绑定的角色)或者系统级(全局角色在任何地方都适用导入绑定)的角色表数据)
* @param request
* @return
*/
@Override
public IPage<ApiRelProjectRoleSelectPageResponse> selectProjectPage(Page<ApiRelProjectRoleSelectPageResponse> page,
ApiRelProjectRoleSelectPageRequest request) {
return baseMapper.selectProjectPage(page,request);
}
/**
* 删除项目和角色关系
* @param id 项目和角色关系表主键id
* @return
*/
@Override
public RelProjectRole queryOne(Long id) {
return this.getById(id);
}
} }
package com.yd.user.service.service.impl; package com.yd.user.service.service.impl;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yd.user.feign.request.relprojectuser.ApiRelProjectUserListPageRequest;
import com.yd.user.feign.request.relprojectuser.ApiRelProjectUserSelectPageRequest;
import com.yd.user.feign.response.relprojectuser.ApiRelProjectUserListPageResponse;
import com.yd.user.feign.response.relprojectuser.ApiRelProjectUserSelectPageResponse;
import com.yd.user.service.model.RelProjectUser; import com.yd.user.service.model.RelProjectUser;
import com.yd.user.service.dao.RelProjectUserMapper; import com.yd.user.service.dao.RelProjectUserMapper;
import com.yd.user.service.service.IRelProjectUserService; import com.yd.user.service.service.IRelProjectUserService;
...@@ -17,4 +23,34 @@ import org.springframework.stereotype.Service; ...@@ -17,4 +23,34 @@ import org.springframework.stereotype.Service;
@Service @Service
public class RelProjectUserServiceImpl extends ServiceImpl<RelProjectUserMapper, RelProjectUser> implements IRelProjectUserService { public class RelProjectUserServiceImpl extends ServiceImpl<RelProjectUserMapper, RelProjectUser> implements IRelProjectUserService {
/**
* 项目和用户关系分页查询
* @param request
* @return
*/
@Override
public IPage<ApiRelProjectUserListPageResponse> page(Page<ApiRelProjectUserListPageResponse> page,
ApiRelProjectUserListPageRequest request) {
return baseMapper.page(page,request);
}
/**
* 导入-选择用户分页查询(查询用户库的用户id不在当前项目用户关系的用户id列表中的数据)
* @param request
* @return
*/
@Override
public IPage<ApiRelProjectUserSelectPageResponse> selectUserPage(Page<ApiRelProjectUserSelectPageResponse> page, ApiRelProjectUserSelectPageRequest request) {
return baseMapper.selectUserPage(page,request);
}
/**
* 查询单个对象
* @param id
* @return
*/
@Override
public RelProjectUser queryOne(Long id) {
return this.getById(id);
}
} }
package com.yd.user.service.service.impl; package com.yd.user.service.service.impl;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yd.user.feign.request.reltenantmenu.ApiRelTenantMenuListPageRequest;
import com.yd.user.feign.request.reltenantmenu.ApiRelTenantMenuSelectPageRequest;
import com.yd.user.feign.response.reltenantmenu.ApiRelTenantMenuListPageResponse;
import com.yd.user.feign.response.reltenantmenu.ApiRelTenantMenuSelectPageResponse;
import com.yd.user.service.model.RelTenantMenu; import com.yd.user.service.model.RelTenantMenu;
import com.yd.user.service.dao.RelTenantMenuMapper; import com.yd.user.service.dao.RelTenantMenuMapper;
import com.yd.user.service.service.IRelTenantMenuService; import com.yd.user.service.service.IRelTenantMenuService;
...@@ -17,4 +23,35 @@ import org.springframework.stereotype.Service; ...@@ -17,4 +23,35 @@ import org.springframework.stereotype.Service;
@Service @Service
public class RelTenantMenuServiceImpl extends ServiceImpl<RelTenantMenuMapper, RelTenantMenu> implements IRelTenantMenuService { public class RelTenantMenuServiceImpl extends ServiceImpl<RelTenantMenuMapper, RelTenantMenu> implements IRelTenantMenuService {
/**
* 租户和菜单关系分页查询
* @param request
* @return
*/
@Override
public IPage<ApiRelTenantMenuListPageResponse> page(Page<ApiRelTenantMenuListPageResponse> page,
ApiRelTenantMenuListPageRequest request) {
return baseMapper.page(page,request);
}
/**
* 导入-选择菜单分页查询(查询当前租户级(当前所属租户绑定的菜单)或者系统级(全局菜单在任何地方都适用导入绑定)的菜单表数据)
* @param request
* @return
*/
@Override
public IPage<ApiRelTenantMenuSelectPageResponse> selectProjectPage(Page<ApiRelTenantMenuSelectPageResponse> page,
ApiRelTenantMenuSelectPageRequest request) {
return baseMapper.selectProjectPage(page,request);
}
/**
* 查询单个对象
* @param id
* @return
*/
@Override
public RelTenantMenu queryOne(Long id) {
return this.getById(id);
}
} }
package com.yd.user.service.service.impl; package com.yd.user.service.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectListPageRequest;
import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectSelectPageRequest;
import com.yd.user.feign.response.reltenantproject.ApiRelTenantProjectListPageResponse;
import com.yd.user.feign.response.reltenantproject.ApiRelTenantProjectSelectPageResponse;
import com.yd.user.service.dto.RelTenantProjectDto;
import com.yd.user.service.model.RelTenantProject; import com.yd.user.service.model.RelTenantProject;
import com.yd.user.service.dao.RelTenantProjectMapper; import com.yd.user.service.dao.RelTenantProjectMapper;
import com.yd.user.service.model.SysProject;
import com.yd.user.service.service.IRelTenantProjectService; import com.yd.user.service.service.IRelTenantProjectService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Objects;
/** /**
* <p> * <p>
* 租户-项目关系表(正常来说一对多,加关系表方便扩展) 服务实现类 * 租户-项目关系表(正常来说一对多,加关系表方便扩展) 服务实现类
...@@ -17,4 +30,99 @@ import org.springframework.stereotype.Service; ...@@ -17,4 +30,99 @@ import org.springframework.stereotype.Service;
@Service @Service
public class RelTenantProjectServiceImpl extends ServiceImpl<RelTenantProjectMapper, RelTenantProject> implements IRelTenantProjectService { public class RelTenantProjectServiceImpl extends ServiceImpl<RelTenantProjectMapper, RelTenantProject> implements IRelTenantProjectService {
/**
* 租户和项目关系分页查询
* @param request
* @return
*/
@Override
public IPage<ApiRelTenantProjectListPageResponse> page(Page<ApiRelTenantProjectListPageResponse> page,
ApiRelTenantProjectListPageRequest request) {
return baseMapper.page(page,request);
}
/**
* 导入-选择项目分页查询
* @param request
* @return
*/
@Override
public IPage<ApiRelTenantProjectSelectPageResponse> selectProjectPage(Page<ApiRelTenantProjectSelectPageResponse> page,
ApiRelTenantProjectSelectPageRequest request) {
return baseMapper.selectProjectPage(page,request);
}
/**
* 查询单个对象(主键id)
* @param id
* @return
*/
@Override
public RelTenantProject queryOne(Long id) {
return this.getOne(new LambdaQueryWrapper<RelTenantProject>().eq(RelTenantProject::getId,id));
}
/**
* 查询单个对象(租户业务id和项目业务id)
* @param tenantBizId
* @param projectBizId
* @return
*/
@Override
public RelTenantProject queryOne(String tenantBizId, String projectBizId) {
return this.getOne(new LambdaQueryWrapper<RelTenantProject>()
.eq(RelTenantProject::getTenantBizId,tenantBizId)
.eq(RelTenantProject::getProjectBizId,projectBizId)
);
}
/**
* 查询租户项目关系列表
* @param dto
* @return
*/
@Override
public List<RelTenantProject> queryList(RelTenantProjectDto dto) {
List<RelTenantProject> list = baseMapper.selectList(new LambdaQueryWrapper<RelTenantProject>()
.eq(!Objects.isNull(dto.getId()),RelTenantProject::getId,dto.getId())
.eq(StringUtils.isNotBlank(dto.getTenantBizId()),RelTenantProject::getTenantBizId,dto.getTenantBizId())
.eq(StringUtils.isNotBlank(dto.getProjectBizId()),RelTenantProject::getProjectBizId,dto.getProjectBizId())
.eq(!Objects.isNull(dto.getStatus()),RelTenantProject::getStatus,dto.getStatus())
);
return list;
}
/**
* 根据项目id删除关系
* @param projectBizId
* @return
*/
@Override
public void delRelByProjectBizId(String projectBizId) {
this.remove(new LambdaQueryWrapper<RelTenantProject>().eq(RelTenantProject::getProjectBizId,projectBizId));
}
/**
* 根据项目id删除关系(保留传入租户id列表的关系)
* @param projectBizId
* @return
*/
@Override
public void delRelByProjectBizIdNeTenantBizIdList(String projectBizId, List<String> tenantBizIdList) {
this.remove(new LambdaQueryWrapper<RelTenantProject>()
.eq(RelTenantProject::getProjectBizId,projectBizId)
.notIn(RelTenantProject::getTenantBizId,tenantBizIdList)
);
}
/**
* 根据租户id删除关系
* @param tenantBizId
* @return
*/
@Override
public void delRelByTenantBizId(String tenantBizId) {
this.remove(new LambdaQueryWrapper<RelTenantProject>().eq(RelTenantProject::getTenantBizId,tenantBizId));
}
} }
package com.yd.user.service.service.impl; package com.yd.user.service.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yd.user.feign.request.reltenantrole.ApiRelTenantRoleListPageRequest;
import com.yd.user.feign.request.reltenantrole.ApiRelTenantRoleSelectPageRequest;
import com.yd.user.feign.response.reltenantrole.ApiRelTenantRoleListPageResponse;
import com.yd.user.feign.response.reltenantrole.ApiRelTenantRoleSelectPageResponse;
import com.yd.user.service.model.RelTenantRole; import com.yd.user.service.model.RelTenantRole;
import com.yd.user.service.dao.RelTenantRoleMapper; import com.yd.user.service.dao.RelTenantRoleMapper;
import com.yd.user.service.service.IRelTenantRoleService; import com.yd.user.service.service.IRelTenantRoleService;
...@@ -17,4 +24,34 @@ import org.springframework.stereotype.Service; ...@@ -17,4 +24,34 @@ import org.springframework.stereotype.Service;
@Service @Service
public class RelTenantRoleServiceImpl extends ServiceImpl<RelTenantRoleMapper, RelTenantRole> implements IRelTenantRoleService { public class RelTenantRoleServiceImpl extends ServiceImpl<RelTenantRoleMapper, RelTenantRole> implements IRelTenantRoleService {
/**
* 租户和角色关系分页查询
* @param request
* @return
*/
@Override
public IPage<ApiRelTenantRoleListPageResponse> page(Page<ApiRelTenantRoleListPageResponse> page, ApiRelTenantRoleListPageRequest request) {
return baseMapper.page(page,request);
}
/**
* 查询单个对象
* @param id
* @return
*/
@Override
public RelTenantRole queryOne(Long id) {
return this.getOne(new LambdaQueryWrapper<RelTenantRole>().eq(RelTenantRole::getId,id));
}
/**
* 导入-选择角色分页查询
* @param request
* @return
*/
@Override
public IPage<ApiRelTenantRoleSelectPageResponse> selectProjectPage(Page<ApiRelTenantRoleSelectPageResponse> page,
ApiRelTenantRoleSelectPageRequest request) {
return baseMapper.selectProjectPage(page,request);
}
} }
package com.yd.user.service.service.impl; package com.yd.user.service.service.impl;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yd.user.feign.request.reltenantuser.ApiRelTenantUserListPageRequest;
import com.yd.user.feign.request.reltenantuser.ApiRelTenantUserSelectPageRequest;
import com.yd.user.feign.response.reltenantuser.ApiRelTenantUserListPageResponse;
import com.yd.user.feign.response.reltenantuser.ApiRelTenantUserSelectPageResponse;
import com.yd.user.service.model.RelTenantUser; import com.yd.user.service.model.RelTenantUser;
import com.yd.user.service.dao.RelTenantUserMapper; import com.yd.user.service.dao.RelTenantUserMapper;
import com.yd.user.service.service.IRelTenantUserService; import com.yd.user.service.service.IRelTenantUserService;
...@@ -17,4 +23,35 @@ import org.springframework.stereotype.Service; ...@@ -17,4 +23,35 @@ import org.springframework.stereotype.Service;
@Service @Service
public class RelTenantUserServiceImpl extends ServiceImpl<RelTenantUserMapper, RelTenantUser> implements IRelTenantUserService { public class RelTenantUserServiceImpl extends ServiceImpl<RelTenantUserMapper, RelTenantUser> implements IRelTenantUserService {
/**
* 租户和用户关系分页查询
* @param request
* @return
*/
@Override
public IPage<ApiRelTenantUserListPageResponse> page(Page<ApiRelTenantUserListPageResponse> page,
ApiRelTenantUserListPageRequest request) {
return baseMapper.page(page,request);
}
/**
* 导入-选择用户分页查询(查询用户库的用户id不在当前租户用户关系的用户id列表中的数据)
* @param request
* @return
*/
@Override
public IPage<ApiRelTenantUserSelectPageResponse> selectUserPage(Page<ApiRelTenantUserSelectPageResponse> page,
ApiRelTenantUserSelectPageRequest request) {
return baseMapper.selectUserPage(page,request);
}
/**
* 查询单个对象
* @param id
* @return
*/
@Override
public RelTenantUser queryOne(Long id) {
return this.getById(id);
}
} }
package com.yd.user.service.service.impl; package com.yd.user.service.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.yd.user.feign.response.reluserrole.ApiSelectedProjectUserRoleListResponse;
import com.yd.user.feign.response.reluserrole.ApiSelectedTenantUserRoleListResponse;
import com.yd.user.service.model.RelUserRole; import com.yd.user.service.model.RelUserRole;
import com.yd.user.service.dao.RelUserRoleMapper; import com.yd.user.service.dao.RelUserRoleMapper;
import com.yd.user.service.service.IRelUserRoleService; import com.yd.user.service.service.IRelUserRoleService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.List;
/** /**
* <p> * <p>
* 用户-角色关系表(多对多关系) 服务实现类 * 用户-角色关系表(多对多关系) 服务实现类
...@@ -17,4 +22,47 @@ import org.springframework.stereotype.Service; ...@@ -17,4 +22,47 @@ import org.springframework.stereotype.Service;
@Service @Service
public class RelUserRoleServiceImpl extends ServiceImpl<RelUserRoleMapper, RelUserRole> implements IRelUserRoleService { public class RelUserRoleServiceImpl extends ServiceImpl<RelUserRoleMapper, RelUserRole> implements IRelUserRoleService {
/**
* 删除租户用户角色关系
* @param tenantBizId
* @param userBizId
*/
@Override
public void delRelTenantUserRole(String tenantBizId, String userBizId) {
this.remove(new LambdaQueryWrapper<RelUserRole>()
.eq(RelUserRole::getTenantBizId,tenantBizId)
.eq(RelUserRole::getUserBizId,userBizId)
);
}
/**
* 删除项目用户角色关系
* @param projectBizId
* @param userBizId
*/
@Override
public void delRelProjectUserRole(String projectBizId, String userBizId) {
this.remove(new LambdaQueryWrapper<RelUserRole>()
.eq(RelUserRole::getProjectBizId,projectBizId)
.eq(RelUserRole::getUserBizId,userBizId)
);
}
/**
* 租户管理-用户配置-权限配置-查询选中的角色列表
* @return
*/
@Override
public List<ApiSelectedTenantUserRoleListResponse> selectedTenantUserRoleList(String tenantBizId, String userBizId) {
return baseMapper.selectedTenantUserRoleList(tenantBizId,userBizId);
}
/**
* 项目管理-用户配置-权限配置-查询选中的角色列表
* @return
*/
@Override
public List<ApiSelectedProjectUserRoleListResponse> selectedProjectUserRoleList(String projectBizId, String userBizId) {
return baseMapper.selectedProjectUserRoleList(projectBizId,userBizId);
}
} }
package com.yd.user.service.service.impl; package com.yd.user.service.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.yd.user.service.dto.SysMenuDto;
import com.yd.user.service.model.SysMenu; import com.yd.user.service.model.SysMenu;
import com.yd.user.service.dao.SysMenuMapper; import com.yd.user.service.dao.SysMenuMapper;
import com.yd.user.service.model.SysRole;
import com.yd.user.service.service.ISysMenuService; import com.yd.user.service.service.ISysMenuService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Objects;
/** /**
* <p> * <p>
* 菜单权限表 服务实现类 * 菜单权限表 服务实现类
...@@ -17,4 +24,29 @@ import org.springframework.stereotype.Service; ...@@ -17,4 +24,29 @@ import org.springframework.stereotype.Service;
@Service @Service
public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> implements ISysMenuService { public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> implements ISysMenuService {
/**
* 查询单个对象
* @param menuBizId
* @return
*/
@Override
public SysMenu queryOne(String menuBizId) {
return this.getOne(new LambdaQueryWrapper<SysMenu>().eq(SysMenu::getMenuBizId,menuBizId));
}
/**
* 根据条件查询菜单列表
* @param dto
* @return
*/
@Override
public List<SysMenu> queryList(SysMenuDto dto) {
List<SysMenu> list = baseMapper.selectList(new LambdaQueryWrapper<SysMenu>()
.eq(!Objects.isNull(dto.getId()),SysMenu::getId,dto.getId())
.eq(StringUtils.isNotBlank(dto.getMenuBizId()) && !dto.getIsExcludeMy(),SysMenu::getMenuBizId,dto.getMenuBizId())
.eq(StringUtils.isNotBlank(dto.getMenuName()),SysMenu::getMenuName,dto.getMenuName())
.ne(dto.getIsExcludeMy(),SysMenu::getMenuBizId,dto.getMenuBizId())
);
return list;
}
} }
package com.yd.user.service.service.impl; package com.yd.user.service.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yd.user.feign.request.sysproject.ApiSysProjectPageRequest;
import com.yd.user.feign.response.sysproject.ApiSysProjectPageResponse;
import com.yd.user.service.dto.SysProjectDto;
import com.yd.user.service.model.SysProject; import com.yd.user.service.model.SysProject;
import com.yd.user.service.dao.SysProjectMapper; import com.yd.user.service.dao.SysProjectMapper;
import com.yd.user.service.model.SysTenant;
import com.yd.user.service.service.ISysProjectService; import com.yd.user.service.service.ISysProjectService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Objects;
/** /**
* <p> * <p>
* 项目信息表 服务实现类 * 项目信息表 服务实现类
...@@ -17,4 +28,43 @@ import org.springframework.stereotype.Service; ...@@ -17,4 +28,43 @@ import org.springframework.stereotype.Service;
@Service @Service
public class SysProjectServiceImpl extends ServiceImpl<SysProjectMapper, SysProject> implements ISysProjectService { public class SysProjectServiceImpl extends ServiceImpl<SysProjectMapper, SysProject> implements ISysProjectService {
/**
* 项目分页查询
* @param page
* @param request
* @return
*/
@Override
public IPage<ApiSysProjectPageResponse> page(Page<ApiSysProjectPageResponse> page,
ApiSysProjectPageRequest request,
Boolean isAdmin,String loginTenantBizId) {
return baseMapper.page(page,request,isAdmin,loginTenantBizId);
}
/**
* 查询单个对象
* @param projectBizId
* @return
*/
@Override
public SysProject queryOne(String projectBizId) {
return this.getOne(new LambdaQueryWrapper<SysProject>().eq(SysProject::getProjectBizId,projectBizId));
}
/**
* 查询项目列表信息
* @param dto
* @return
*/
@Override
public List<SysProject> queryList(SysProjectDto dto) {
List<SysProject> list = baseMapper.selectList(new LambdaQueryWrapper<SysProject>()
.eq(!Objects.isNull(dto.getId()),SysProject::getId,dto.getId())
.eq(StringUtils.isNotBlank(dto.getProjectBizId()) && !dto.getIsExcludeMy(),SysProject::getProjectBizId,dto.getProjectBizId())
.eq(StringUtils.isNotBlank(dto.getProjectName()),SysProject::getProjectName,dto.getProjectName())
.eq(!Objects.isNull(dto.getStatus()),SysProject::getStatus,dto.getStatus())
.ne(dto.getIsExcludeMy(),SysProject::getProjectBizId,dto.getProjectBizId())
);
return list;
}
} }
package com.yd.user.service.service.impl; package com.yd.user.service.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yd.user.feign.request.sysrole.ApiSysRolePageRequest;
import com.yd.user.feign.response.sysrole.ApiSysRolePageResponse;
import com.yd.user.service.dto.SysRoleDto;
import com.yd.user.service.model.SysRole; import com.yd.user.service.model.SysRole;
import com.yd.user.service.dao.SysRoleMapper; import com.yd.user.service.dao.SysRoleMapper;
import com.yd.user.service.service.ISysRoleService; import com.yd.user.service.service.ISysRoleService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Objects;
/** /**
* <p> * <p>
...@@ -17,4 +26,43 @@ import org.springframework.stereotype.Service; ...@@ -17,4 +26,43 @@ import org.springframework.stereotype.Service;
@Service @Service
public class SysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> implements ISysRoleService { public class SysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> implements ISysRoleService {
/**
* 角色分页查询
* @param request
* @return
*/
@Override
public IPage<ApiSysRolePageResponse> page(Page<ApiSysRolePageResponse> page,
ApiSysRolePageRequest request,
Boolean isAdmin,
List<String> projectBizIdList,
String loginTenantBizId) {
return baseMapper.page(page,request,isAdmin,projectBizIdList,loginTenantBizId);
}
/**
* 查询单个对象
* @param roleBizId
* @return
*/
@Override
public SysRole queryOne(String roleBizId) {
return this.getOne(new LambdaQueryWrapper<SysRole>().eq(SysRole::getRoleBizId,roleBizId));
}
/**
* 查询角色列表
* @param dto
* @return
*/
@Override
public List<SysRole> queryList(SysRoleDto dto) {
List<SysRole> list = baseMapper.selectList(new LambdaQueryWrapper<SysRole>()
.eq(!Objects.isNull(dto.getId()),SysRole::getId,dto.getId())
.eq(StringUtils.isNotBlank(dto.getRoleBizId()) && !dto.getIsExcludeMy(),SysRole::getRoleBizId,dto.getRoleBizId())
.eq(StringUtils.isNotBlank(dto.getRoleName()),SysRole::getRoleName,dto.getRoleName())
.ne(dto.getIsExcludeMy(),SysRole::getRoleBizId,dto.getRoleBizId())
);
return list;
}
} }
...@@ -34,18 +34,22 @@ public class SysTenantServiceImpl extends ServiceImpl<SysTenantMapper, SysTenant ...@@ -34,18 +34,22 @@ public class SysTenantServiceImpl extends ServiceImpl<SysTenantMapper, SysTenant
* @return * @return
*/ */
@Override @Override
public IPage<ApiSysTenantPageResponse> page(Page<ApiSysTenantPageResponse> page, ApiSysTenantPageRequest request) { public IPage<ApiSysTenantPageResponse> page(Page<ApiSysTenantPageResponse> page,
return baseMapper.page(page,request); ApiSysTenantPageRequest request,
Boolean isAdmin,
String userBizId,
String loginTenantBizId) {
return baseMapper.page(page,request,isAdmin,userBizId,loginTenantBizId);
} }
/** /**
* 根据租户唯一标识查询单个对象 * 根据租户唯一标识查询单个对象
* @param tenantUid * @param tenantBizId
* @return * @return
*/ */
@Override @Override
public SysTenant queryOne(String tenantUid) { public SysTenant queryOne(String tenantBizId) {
return this.getOne(new LambdaQueryWrapper<SysTenant>().eq(SysTenant::getTenantUid,tenantUid)); return this.getOne(new LambdaQueryWrapper<SysTenant>().eq(SysTenant::getTenantBizId,tenantBizId));
} }
/** /**
...@@ -57,10 +61,10 @@ public class SysTenantServiceImpl extends ServiceImpl<SysTenantMapper, SysTenant ...@@ -57,10 +61,10 @@ public class SysTenantServiceImpl extends ServiceImpl<SysTenantMapper, SysTenant
public List<SysTenant> queryList(SysTenantDto dto) { public List<SysTenant> queryList(SysTenantDto dto) {
List<SysTenant> list = baseMapper.selectList(new LambdaQueryWrapper<SysTenant>() List<SysTenant> list = baseMapper.selectList(new LambdaQueryWrapper<SysTenant>()
.eq(!Objects.isNull(dto.getId()),SysTenant::getId,dto.getId()) .eq(!Objects.isNull(dto.getId()),SysTenant::getId,dto.getId())
.eq(StringUtils.isNotBlank(dto.getTenantUid()),SysTenant::getTenantUid,dto.getTenantUid()) .eq(StringUtils.isNotBlank(dto.getTenantBizId()) && !dto.getIsExcludeMy(),SysTenant::getTenantBizId,dto.getTenantBizId())
.eq(StringUtils.isNotBlank(dto.getTenantName()),SysTenant::getTenantName,dto.getTenantName()) .eq(StringUtils.isNotBlank(dto.getTenantName()),SysTenant::getTenantName,dto.getTenantName())
.eq(!Objects.isNull(dto.getStatus()),SysTenant::getStatus,dto.getStatus()) .eq(!Objects.isNull(dto.getStatus()),SysTenant::getStatus,dto.getStatus())
.ne(dto.getIsExcludeMy(),SysTenant::getTenantUid,dto.getTenantUid()) .ne(dto.getIsExcludeMy(),SysTenant::getTenantBizId,dto.getTenantBizId())
); );
return list; return list;
} }
......
...@@ -8,14 +8,18 @@ import com.yd.common.enums.ResultCode; ...@@ -8,14 +8,18 @@ import com.yd.common.enums.ResultCode;
import com.yd.common.exception.BusinessException; import com.yd.common.exception.BusinessException;
import com.yd.user.feign.request.sysuser.ApiSysUserPageRequest; import com.yd.user.feign.request.sysuser.ApiSysUserPageRequest;
import com.yd.user.feign.response.sysuser.ApiSysUserPageResponse; import com.yd.user.feign.response.sysuser.ApiSysUserPageResponse;
import com.yd.user.service.dto.SysUserDto;
import com.yd.user.service.model.SysTenant;
import com.yd.user.service.model.SysUser; import com.yd.user.service.model.SysUser;
import com.yd.user.service.dao.SysUserMapper; import com.yd.user.service.dao.SysUserMapper;
import com.yd.user.service.service.ISysUserService; import com.yd.user.service.service.ISysUserService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.security.core.userdetails.UserDetails; import org.springframework.security.core.userdetails.UserDetails;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Objects; import java.util.Objects;
/** /**
...@@ -30,18 +34,41 @@ import java.util.Objects; ...@@ -30,18 +34,41 @@ import java.util.Objects;
public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> implements ISysUserService { public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> implements ISysUserService {
@Override @Override
public IPage<ApiSysUserPageResponse> page(Page<ApiSysUserPageResponse> page, ApiSysUserPageRequest request) { public IPage<ApiSysUserPageResponse> page(Page<ApiSysUserPageResponse> page,
return baseMapper.page(page,request); ApiSysUserPageRequest request,
Boolean isAdmin,
String loginTenantBizId) {
return baseMapper.page(page,request,isAdmin,loginTenantBizId);
} }
@Override @Override
public SysUser queryOne(String userUid) { public SysUser queryOne(String userBizId) {
return this.getOne(new LambdaQueryWrapper<SysUser>().eq(SysUser::getUserUid,userUid)); return this.getOne(new LambdaQueryWrapper<SysUser>().eq(SysUser::getUserBizId,userBizId));
} }
@Override @Override
public SysUser queryOneByName(String username) { public SysUser queryOneByName(String userName) {
return this.getOne(new LambdaQueryWrapper<SysUser>().eq(SysUser::getUsername,username)); return this.getOne(new LambdaQueryWrapper<SysUser>().eq(SysUser::getUserName,userName));
}
/**
* 根据条件查询用户列表信息
* @param dto
* @return
*/
@Override
public List<SysUser> queryList(SysUserDto dto) {
List<SysUser> list = baseMapper.selectList(new LambdaQueryWrapper<SysUser>()
.eq(!Objects.isNull(dto.getId()),SysUser::getId,dto.getId())
.eq(StringUtils.isNotBlank(dto.getUserBizId()) && !dto.getIsExcludeMy(),SysUser::getUserBizId,dto.getUserBizId())
.eq(StringUtils.isNotBlank(dto.getUserName()),SysUser::getUserName,dto.getUserName())
.eq(StringUtils.isNotBlank(dto.getEmail()),SysUser::getEmail,dto.getEmail())
.eq(StringUtils.isNotBlank(dto.getMobile()),SysUser::getMobile,dto.getMobile())
.eq(!Objects.isNull(dto.getStatus()),SysUser::getStatus,dto.getStatus())
.eq(!Objects.isNull(dto.getIsSuperAdmin()),SysUser::getIsSuperAdmin,dto.getIsSuperAdmin())
.ne(dto.getIsExcludeMy(),SysUser::getUserBizId,dto.getUserBizId())
);
return list;
} }
} }
...@@ -8,8 +8,8 @@ public class MyBatisPlusCodeGenerator { ...@@ -8,8 +8,8 @@ public class MyBatisPlusCodeGenerator {
FastAutoGenerator.create("jdbc:mysql://localhost:3306/yd?serverTimezone=GMT%2B8", "root", "123456") FastAutoGenerator.create("jdbc:mysql://localhost:3306/yd?serverTimezone=GMT%2B8", "root", "123456")
.globalConfig(builder -> { .globalConfig(builder -> {
builder.author("zxm") builder.author("zxm")
// .outputDir("D:/soft/ideaproject/v2/yd-user/src/main/java/com/yd/user/service"); .outputDir("src/main/java/com/yd/user/service");
.outputDir("D:/soft/ideaproject/v2/yd-user/yd-user-service/src/main/java"); // .outputDir("D:/soft/ideaproject/v2/yd-user/yd-user-service/src/main/java");
}) })
.packageConfig(builder -> { .packageConfig(builder -> {
builder.parent("com.yd.user.service") builder.parent("com.yd.user.service")
...@@ -28,7 +28,7 @@ public class MyBatisPlusCodeGenerator { ...@@ -28,7 +28,7 @@ public class MyBatisPlusCodeGenerator {
"rel_tenant_user", "rel_tenant_user_group", "rel_user_role", "rel_tenant_user", "rel_tenant_user_group", "rel_user_role",
"sys_dept", "sys_dict", "sys_dict_item", "sys_login_log", "sys_dept", "sys_dict", "sys_dict_item", "sys_login_log",
"sys_menu", "sys_oper_log", "sys_post", "sys_role", "sys_menu", "sys_oper_log", "sys_post", "sys_role",
"sys_tenant", "sys_user", "sys_user_group", "yd_sys_project" "sys_tenant", "sys_user", "sys_user_group", "sys_project"
) )
.entityBuilder() .entityBuilder()
.enableLombok() .enableLombok()
......
...@@ -2,4 +2,36 @@ ...@@ -2,4 +2,36 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yd.user.service.dao.RelProjectRoleMapper"> <mapper namespace="com.yd.user.service.dao.RelProjectRoleMapper">
<select id="page" resultType="com.yd.user.feign.response.relprojectrole.ApiRelProjectRoleListPageResponse">
select
rpr.id,rpr.project_biz_id,rpr.role_biz_id,
sr.role_name,sr.scope,sr.role_type
from rel_project_role rpr
inner join sys_role sr on sr.role_biz_id = rpr.role_biz_id
<where>
and rpr.project_biz_id = #{request.projectBizId}
<if test="request.roleName != null and request.roleName != ''">
and sr.role_name like concat('%', #{request.roleName}, '%')
</if>
and sr.is_deleted = 0
</where>
</select>
<select id="selectProjectPage"
resultType="com.yd.user.feign.response.relprojectrole.ApiRelProjectRoleSelectPageResponse">
select
sr.id.sr.role_biz_id,sr.role_name,sr.role_type,sr.status,sr.scope
from sys_role sr
<where>
and ((sr.project_biz_id = #{request.projectBizId} and sr.scope = 3) or sr.scope = 1)
<if test="request.roleName != null and request.roleName != ''">
and sr.role_name like concat('%', #{request.roleName}, '%')
</if>
and sr.is_deleted = 0
and sr.role_biz_id
not in( select rpr.role_biz_id from rel_project_role rpr where rpr.project_biz_id = #{request.projectBizId})
</where>
</select>
</mapper> </mapper>
...@@ -2,4 +2,56 @@ ...@@ -2,4 +2,56 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yd.user.service.dao.RelProjectUserMapper"> <mapper namespace="com.yd.user.service.dao.RelProjectUserMapper">
<select id="page" resultType="com.yd.user.feign.response.relprojectuser.ApiRelProjectUserListPageResponse">
select
rpu.id,rpu.user_biz_id,
su.user_name,su.real_name,su.nick_name,su.email,su.mobile,su.gender
from rel_project_user rpu
inner join sys_user su on su.user_biz_id = rpu.user_biz_id
<where>
and rpu.project_biz_id = #{request.projectBizId}
<if test="request.userName != null and request.userName != ''">
and su.user_name like concat('%', #{request.userName}, '%')
</if>
<if test="request.realName != null and request.realName != ''">
and su.real_name like concat('%', #{request.realName}, '%')
</if>
<if test="request.mobile != null and request.mobile != ''">
and su.mobile like concat('%', #{request.mobile}, '%')
</if>
and su.is_deleted = 0
</where>
</select>
<select id="selectUserPage"
resultType="com.yd.user.feign.response.relprojectuser.ApiRelProjectUserSelectPageResponse">
select
su.id,su.user_biz_id,
su.user_name,su.real_name,su.nick_name,su.email,su.mobile,su.gender
from sys_user su
<where>
<if test="request.userName != null and request.userName != ''">
and su.user_name like concat('%', #{request.userName}, '%')
</if>
<if test="request.realName != null and request.realName != ''">
and su.real_name like concat('%', #{request.realName}, '%')
</if>
<if test="request.mobile != null and request.mobile != ''">
and su.mobile like concat('%', #{request.mobile}, '%')
</if>
and su.is_deleted = 0
and su.user_biz_id
not in( select rpu.user_biz_id from rel_project_user rpu where rpu.project_biz_id = #{request.projectBizId})
</where>
</select>
</mapper> </mapper>
...@@ -2,4 +2,11 @@ ...@@ -2,4 +2,11 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yd.user.service.dao.RelTenantMenuMapper"> <mapper namespace="com.yd.user.service.dao.RelTenantMenuMapper">
<select id="page" resultType="com.yd.user.feign.response.reltenantmenu.ApiRelTenantMenuListPageResponse">
</select>
<select id="selectProjectPage"
resultType="com.yd.user.feign.response.reltenantmenu.ApiRelTenantMenuSelectPageResponse">
</select>
</mapper> </mapper>
...@@ -2,4 +2,43 @@ ...@@ -2,4 +2,43 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yd.user.service.dao.RelTenantProjectMapper"> <mapper namespace="com.yd.user.service.dao.RelTenantProjectMapper">
<select id="page"
resultType="com.yd.user.feign.response.reltenantproject.ApiRelTenantProjectListPageResponse">
select rtp.id,rtp.tenant_biz_id,rtp.project_biz_id,
sp.project_name,sp.start_time,sp.end_time
from rel_tenant_project rtp
inner join sys_project sp on sp.project_biz_id = rtp.project_biz_id
and sp.is_deleted = 0
<where>
and rtp.tenant_biz_id = #{request.tenantBizId}
<if test="request.projectName != null and request.projectName != ''">
and sp.project_name like concat('%', #{request.projectName}, '%')
</if>
</where>
</select>
<select id="selectProjectPage"
resultType="com.yd.user.feign.response.reltenantproject.ApiRelTenantProjectSelectPageResponse">
select
sp.id,
sp.project_biz_id,
sp.project_name,
sp.scope
from sys_project sp
<where>
and ((sp.tenant_biz_id = #{request.tenantBizId} and sp.scope = 2) or sp.scope = 1)
<if test="request.projectName != null and request.projectName != ''">
and sp.project_name like concat('%', #{request.projectName}, '%')
</if>
and sp.is_deleted = 0
and sp.project_biz_id
not in( select rtp.project_biz_id from rel_tenant_project rtp where rtp.tenant_biz_id = #{request.tenantBizId})
</where>
</select>
</mapper> </mapper>
...@@ -2,4 +2,37 @@ ...@@ -2,4 +2,37 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yd.user.service.dao.RelTenantRoleMapper"> <mapper namespace="com.yd.user.service.dao.RelTenantRoleMapper">
<select id="page" resultType="com.yd.user.feign.response.reltenantrole.ApiRelTenantRoleListPageResponse">
select
rtr.id,rtr.tenant_biz_id,rtr.role_biz_id,
sr.role_name,sr.scope,sr.role_type
from rel_tenant_role rtr
inner join sys_role sr on sr.role_biz_id = rtr.role_biz_id
<where>
and rtr.tenant_biz_id = #{request.tenantBizId}
<if test="request.roleName != null and request.roleName != ''">
and sr.role_name like concat('%', #{request.roleName}, '%')
</if>
and sr.is_deleted = 0
</where>
</select>
<select id="selectProjectPage"
resultType="com.yd.user.feign.response.reltenantrole.ApiRelTenantRoleSelectPageResponse">
select
sr.id.sr.role_biz_id,sr.role_name,sr.role_type,sr.status,sr.scope
from sys_role sr
<where>
and ((sr.tenant_biz_id = #{request.tenantBizId} and sr.scope = 2) or sr.scope = 1)
<if test="request.roleName != null and request.roleName != ''">
and sr.role_name like concat('%', #{request.roleName}, '%')
</if>
and sr.is_deleted = 0
and sr.role_biz_id
not in( select rtr.role_biz_id from rel_tenant_role rtr where rtr.tenant_biz_id = #{request.tenantBizId})
</where>
</select>
</mapper> </mapper>
...@@ -2,4 +2,56 @@ ...@@ -2,4 +2,56 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yd.user.service.dao.RelTenantUserMapper"> <mapper namespace="com.yd.user.service.dao.RelTenantUserMapper">
<select id="page" resultType="com.yd.user.feign.response.reltenantuser.ApiRelTenantUserListPageResponse">
select
rtu.id,rtu.user_biz_id,
su.user_name,su.real_name,su.nick_name,su.email,su.mobile,su.gender
from rel_tenant_user rtu
inner join sys_user su on su.user_biz_id = rtu.user_biz_id
<where>
and rtu.tenant_biz_id = #{request.tenantBizId}
<if test="request.userName != null and request.userName != ''">
and su.user_name like concat('%', #{request.userName}, '%')
</if>
<if test="request.realName != null and request.realName != ''">
and su.real_name like concat('%', #{request.realName}, '%')
</if>
<if test="request.mobile != null and request.mobile != ''">
and su.mobile like concat('%', #{request.mobile}, '%')
</if>
and su.is_deleted = 0
</where>
</select>
<select id="selectUserPage"
resultType="com.yd.user.feign.response.reltenantuser.ApiRelTenantUserSelectPageResponse">
select
su.id,su.user_biz_id,
su.user_name,su.real_name,su.nick_name,su.email,su.mobile,su.gender
from sys_user su
<where>
<if test="request.userName != null and request.userName != ''">
and su.user_name like concat('%', #{request.userName}, '%')
</if>
<if test="request.realName != null and request.realName != ''">
and su.real_name like concat('%', #{request.realName}, '%')
</if>
<if test="request.mobile != null and request.mobile != ''">
and su.mobile like concat('%', #{request.mobile}, '%')
</if>
and su.is_deleted = 0
and su.user_biz_id
not in( select rtu.user_biz_id from rel_tenant_user rtu where rtu.tenant_biz_id = #{request.tenantBizId})
</where>
</select>
</mapper> </mapper>
...@@ -2,4 +2,29 @@ ...@@ -2,4 +2,29 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yd.user.service.dao.RelUserRoleMapper"> <mapper namespace="com.yd.user.service.dao.RelUserRoleMapper">
<select id="selectedTenantUserRoleList"
resultType="com.yd.user.feign.response.reluserrole.ApiSelectedTenantUserRoleListResponse">
select
rur.id,rur.tenant_biz_id,rur.project_biz_id,rur.user_biz_id,rur.role_biz_id,sr.role_name
from rel_user_role rur
inner join sys_role sr on sr.role_biz_id = rur.role_biz_id and sr.is_deleted = 0
<where>
and rur.tenant_biz_id = #{tenantBizId}
and rur.user_biz_id = #{userBizId}
</where>
</select>
<select id="selectedProjectUserRoleList"
resultType="com.yd.user.feign.response.reluserrole.ApiSelectedProjectUserRoleListResponse">
select
rur.id,rur.tenant_biz_id,rur.project_biz_id,rur.user_biz_id,rur.role_biz_id,sr.role_name
from rel_user_role rur
inner join sys_role sr on sr.role_biz_id = rur.role_biz_id and sr.is_deleted = 0
<where>
and rur.project_biz_id = #{projectBizId}
and rur.user_biz_id = #{userBizId}
</where>
</select>
</mapper> </mapper>
...@@ -2,4 +2,27 @@ ...@@ -2,4 +2,27 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yd.user.service.dao.SysProjectMapper"> <mapper namespace="com.yd.user.service.dao.SysProjectMapper">
<select id="page" resultType="com.yd.user.feign.response.sysproject.ApiSysProjectPageResponse">
select sp.id,sp.project_biz_id,
sp.project_name,sp.status,
sp.start_time,sp.end_time,
sp.data_scope
from sys_project sp
<where>
<if test="!isAdmin">
and sp.tenant_biz_id = #{loginTenantBizId}
</if>
<if test="request.projectName != null and request.projectName != ''">
and sp.project_name like concat('%', #{request.projectName}, '%')
</if>
<if test="request.status != null">
and sp.status = #{request.status}
</if>
and sp.is_deleted = 0
</where>
</select>
</mapper> </mapper>
...@@ -2,4 +2,37 @@ ...@@ -2,4 +2,37 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yd.user.service.dao.SysRoleMapper"> <mapper namespace="com.yd.user.service.dao.SysRoleMapper">
<select id="page" resultType="com.yd.user.feign.response.sysrole.ApiSysRolePageResponse">
select sr.id,sr.role_biz_id,
sr.role_name,sr.role_type,
sr.status,sr.scope,
sr.tenant_biz_id,st.tenant_name,
sr.project_biz_id,sp.project_name,
sr.create_time
from sys_role sr
left join sys_tenant st on st.tenant_biz_id = sr.tenant_biz_id and st.is_deleted = 0
left join sys_project sp on sp.project_biz_id = sr.project_biz_id and sp.is_deleted = 0
<where>
<if test="!isAdmin">
and (sr.tenant_biz_id = #{loginTenantBizId} or
<if test="projectBizIdList.size > 0 and projectBizIdList != null">
sr.project_biz_id in
<foreach collection="projectBizIdList" item="item" index="index" open="(" separator="," close=")">
#{item}
</foreach>
</if>
)
</if>
<if test="request.roleName != null and request.roleName != ''">
and sr.role_name like concat('%', #{request.roleName}, '%')
</if>
<if test="request.scope != null">
and sr.scope = #{request.scope}
</if>
</where>
</select>
</mapper> </mapper>
...@@ -6,27 +6,30 @@ ...@@ -6,27 +6,30 @@
select * from sys_tenant st select * from sys_tenant st
<where> <where>
<if test="request.tenantName!= null and request.tenantName!= ''"> <if test="!isAdmin">
and st.tenant_biz_id = #{loginTenantBizId}
</if>
<if test="request.tenantName != null and request.tenantName != ''">
and st.tenant_name like CONCAT('%', #{request.tenantName}, '%') and st.tenant_name like CONCAT('%', #{request.tenantName}, '%')
</if> </if>
<if test="request.contactName!= null and request.contactName!= ''"> <if test="request.contactName != null and request.contactName != ''">
and st.contact_name like CONCAT('%', #{request.contactName}, '%') and st.contact_name like CONCAT('%', #{request.contactName}, '%')
</if> </if>
<if test="request.contactPhone!= null and request.contactPhone!= ''"> <if test="request.contactPhone != null and request.contactPhone != ''">
and st.contact_phone like CONCAT('%', #{request.contactPhone}, '%') and st.contact_phone like CONCAT('%', #{request.contactPhone}, '%')
</if> </if>
<if test="request.status!= null"> <if test="request.status != null">
and st.status = #{request.status} and st.status = #{request.status}
</if> </if>
<if test="request.startTime!= null"> <if test="request.startTime != null">
and st.create_time &gt;= #{request.startTime} and st.create_time &gt;= #{request.startTime}
</if> </if>
<if test="request.endTime!= null"> <if test="request.endTime != null">
and st.create_time &lt;= #{request.endTime} and st.create_time &lt;= #{request.endTime}
</if> </if>
......
...@@ -3,11 +3,32 @@ ...@@ -3,11 +3,32 @@
<mapper namespace="com.yd.user.service.dao.SysUserMapper"> <mapper namespace="com.yd.user.service.dao.SysUserMapper">
<select id="page" resultType="com.yd.user.feign.response.sysuser.ApiSysUserPageResponse"> <select id="page" resultType="com.yd.user.feign.response.sysuser.ApiSysUserPageResponse">
select * from sys_user su select su.* from sys_user su
<if test="!isAdmin">
inner join rel_tenant_user rtu on rtu.user_biz_id = su.user_biz_id and rtu.tenant_biz_id = #{loginTenantBizId}
</if>
<where> <where>
<if test="request.username!= null and request.username!= ''">
and su.username like concat('%', #{request.username}, '%') <if test="request.userName != null and request.userName != ''">
and su.user_name like concat('%', #{request.userName}, '%')
</if>
<if test="request.realName != null and request.realName != ''">
and su.real_name like concat('%', #{request.realName}, '%')
</if>
<if test="request.mobile != null and request.mobile != ''">
and su.mobile like concat('%', #{request.mobile}, '%')
</if>
<if test="request.status != null">
and su.status = #{request.status}
</if>
<if test="request.isSuperAdmin != null">
and su.is_super_admin = #{request.isSuperAdmin}
</if> </if>
and su.is_deleted = 0 and su.is_deleted = 0
......
#Generated by Maven
#Mon Jul 28 15:35:01 CST 2025
version=1.0-SNAPSHOT
groupId=com.yd
artifactId=yd-user-service
com\yd\user\service\mapper\PermissionMapper.class
com\yd\user\service\service\UserService.class
com\yd\user\service\mapper\UserMapper.class
com\yd\user\service\entity\Permission.class
com\yd\user\service\entity\Role.class
com\yd\user\service\config\MyBatisPlusConfig.class
com\yd\user\service\entity\User.class
com\yd\user\service\mapper\RoleMapper.class
com\yd\user\service\service\impl\UserServiceImpl.class
D:\soft\ideaproject\v2\yd-user\yd-user-service\src\main\java\com\yd\user\service\entity\User.java
D:\soft\ideaproject\v2\yd-user\yd-user-service\src\main\java\com\yd\user\service\entity\Role.java
D:\soft\ideaproject\v2\yd-user\yd-user-service\src\main\java\com\yd\user\service\service\UserService.java
D:\soft\ideaproject\v2\yd-user\yd-user-service\src\main\java\com\yd\user\service\mapper\RoleMapper.java
D:\soft\ideaproject\v2\yd-user\yd-user-service\src\main\java\com\yd\user\service\mapper\UserMapper.java
D:\soft\ideaproject\v2\yd-user\yd-user-service\src\main\java\com\yd\user\service\entity\Permission.java
D:\soft\ideaproject\v2\yd-user\yd-user-service\src\main\java\com\yd\user\service\mapper\PermissionMapper.java
D:\soft\ideaproject\v2\yd-user\yd-user-service\src\main\java\com\yd\user\service\config\MyBatisPlusConfig.java
D:\soft\ideaproject\v2\yd-user\yd-user-service\src\main\java\com\yd\user\service\service\impl\UserServiceImpl.java
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment