添加项目权限校验方法
This commit is contained in:
		| @ -43,8 +43,8 @@ public class BusMachineryController extends BaseController { | ||||
|      */ | ||||
|     @SaCheckPermission("machinery:machinery:list") | ||||
|     @GetMapping("/list") | ||||
|     public Page<BusMachineryVo> list(MachineryQueryReq req) { | ||||
|         return busMachineryService.queryPageList(req); | ||||
|     public R<Page<BusMachineryVo>> list(MachineryQueryReq req) { | ||||
|         return R.ok(busMachineryService.queryPageList(req)); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|  | ||||
| @ -43,8 +43,8 @@ public class BusMachineryDetailController extends BaseController { | ||||
|      */ | ||||
|     @SaCheckPermission("machinery:machineryDetail:list") | ||||
|     @GetMapping("/list") | ||||
|     public Page<BusMachineryDetailVo> list(MachineryDetailQueryReq req) { | ||||
|         return busMachineryDetailService.queryPageList(req); | ||||
|     public R<Page<BusMachineryDetailVo>> list(MachineryDetailQueryReq req) { | ||||
|         return R.ok(busMachineryDetailService.queryPageList(req)); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|  | ||||
| @ -12,6 +12,7 @@ import org.dromara.common.core.exception.ServiceException; | ||||
| import org.dromara.common.core.utils.ObjectUtils; | ||||
| import org.dromara.common.core.utils.StringUtils; | ||||
| import org.dromara.common.core.utils.sql.SqlUtil; | ||||
| import org.dromara.common.satoken.utils.LoginHelper; | ||||
| import org.dromara.machinery.domain.BusMachinery; | ||||
| import org.dromara.machinery.domain.req.machinery.MachineryCreateReq; | ||||
| import org.dromara.machinery.domain.req.machinery.MachineryQueryReq; | ||||
| @ -142,6 +143,9 @@ public class BusMachineryServiceImpl extends ServiceImpl<BusMachineryMapper, Bus | ||||
|         if (StrUtil.isBlank(machineryName)) { | ||||
|             throw new ServiceException("机械名称不能为空", HttpStatus.BAD_REQUEST); | ||||
|         } | ||||
|         // 判断用户是否对项目下的内容有操作权限 | ||||
|         Long userId = LoginHelper.getUserId(); | ||||
|         projectService.validAuth(projectId, userId); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|  | ||||
| @ -45,8 +45,8 @@ public class BusCompanyController extends BaseController { | ||||
|      */ | ||||
|     @SaCheckPermission("materials:company:list") | ||||
|     @GetMapping("/list") | ||||
|     public Page<BusCompanyVo> list(CompanyQueryReq req) { | ||||
|         return busCompanyService.queryPageList(req); | ||||
|     public R<Page<BusCompanyVo>> list(CompanyQueryReq req) { | ||||
|         return R.ok(busCompanyService.queryPageList(req)); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|  | ||||
| @ -43,8 +43,8 @@ public class BusMaterialsController extends BaseController { | ||||
|      */ | ||||
|     @SaCheckPermission("materials:materials:list") | ||||
|     @GetMapping("/list") | ||||
|     public Page<BusMaterialsVo> list(MaterialsQueryReq req) { | ||||
|         return busMaterialsService.queryPageList(req); | ||||
|     public R<Page<BusMaterialsVo>> list(MaterialsQueryReq req) { | ||||
|         return R.ok(busMaterialsService.queryPageList(req)); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|  | ||||
| @ -43,8 +43,8 @@ public class BusMaterialsInventoryController extends BaseController { | ||||
|      */ | ||||
|     @SaCheckPermission("materials:materialsInventory:list") | ||||
|     @GetMapping("/list") | ||||
|     public Page<BusMaterialsInventoryVo> list(MaterialsInventoryQueryReq req) { | ||||
|         return busMaterialsInventoryService.queryPageList(req); | ||||
|     public R<Page<BusMaterialsInventoryVo>> list(MaterialsInventoryQueryReq req) { | ||||
|         return R.ok(busMaterialsInventoryService.queryPageList(req)); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|  | ||||
| @ -43,8 +43,8 @@ public class BusConstructionUserController extends BaseController { | ||||
|      */ | ||||
|     @SaCheckPermission("project:constructionUser:list") | ||||
|     @GetMapping("/list") | ||||
|     public Page<BusConstructionUserVo> list(ConstructionUserQueryReq req) { | ||||
|         return busConstructionUserService.queryPageList(req); | ||||
|     public R<Page<BusConstructionUserVo>> list(ConstructionUserQueryReq req) { | ||||
|         return R.ok(busConstructionUserService.queryPageList(req)); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|  | ||||
| @ -43,8 +43,8 @@ public class BusContractorController extends BaseController { | ||||
|      */ | ||||
|     @SaCheckPermission("project:contractor:list") | ||||
|     @GetMapping("/list") | ||||
|     public Page<BusContractorVo> list(ContractorQueryReq req) { | ||||
|         return busContractorService.queryPageList(req); | ||||
|     public R<Page<BusContractorVo>> list(ContractorQueryReq req) { | ||||
|         return R.ok(busContractorService.queryPageList(req)); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|  | ||||
| @ -45,8 +45,8 @@ public class BusProjectController extends BaseController { | ||||
|      */ | ||||
|     @SaCheckPermission("project:project:list") | ||||
|     @GetMapping("/list") | ||||
|     public Page<BusProjectVo> list(ProjectQueryReq req) { | ||||
|         return projectService.queryPageList(req); | ||||
|     public R<Page<BusProjectVo>> list(ProjectQueryReq req) { | ||||
|         return R.ok(projectService.queryPageList(req)); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|  | ||||
| @ -43,8 +43,8 @@ public class BusProjectTeamController extends BaseController { | ||||
|      */ | ||||
|     @SaCheckPermission("project:projectTeam:list") | ||||
|     @GetMapping("/list") | ||||
|     public Page<BusProjectTeamVo> list(ProjectTeamQueryReq req) { | ||||
|         return busProjectTeamService.queryPageList(req); | ||||
|     public R<Page<BusProjectTeamVo>> list(ProjectTeamQueryReq req) { | ||||
|         return R.ok(busProjectTeamService.queryPageList(req)); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|  | ||||
| @ -43,8 +43,8 @@ public class BusProjectTeamMemberController extends BaseController { | ||||
|      */ | ||||
|     @SaCheckPermission("project:projectTeamMember:list") | ||||
|     @GetMapping("/list") | ||||
|     public Page<BusProjectTeamMemberVo> list(ProjectTeamMemberQueryReq req) { | ||||
|         return busProjectTeamMemberService.queryPageList(req); | ||||
|     public R<Page<BusProjectTeamMemberVo>> list(ProjectTeamMemberQueryReq req) { | ||||
|         return R.ok(busProjectTeamMemberService.queryPageList(req)); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|  | ||||
| @ -50,8 +50,8 @@ public class BusUserProjectRelevancyController extends BaseController { | ||||
|     @Tag(name = "查询用户与项目关联列表") | ||||
|     @SaCheckPermission("project:projectRelevancy:list") | ||||
|     @GetMapping("/list") | ||||
|     public Page<BusUserProjectRelevancyVo> list(UserProjectRelevancyQueryReq req) { | ||||
|         return userProjectRelevancyService.queryPageList(req); | ||||
|     public R<Page<BusUserProjectRelevancyVo>> list(UserProjectRelevancyQueryReq req) { | ||||
|         return R.ok(userProjectRelevancyService.queryPageList(req)); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
| @ -97,7 +97,7 @@ public class BusUserProjectRelevancyController extends BaseController { | ||||
|     @SaCheckPermission("project:projectRelevancy:query") | ||||
|     @GetMapping("/{id}") | ||||
|     public R<BusUserProjectRelevancyVo> getInfo(@NotNull(message = "主键不能为空") | ||||
|                                              @PathVariable Long id) { | ||||
|                                                 @PathVariable Long id) { | ||||
|         return R.ok(userProjectRelevancyService.queryById(id)); | ||||
|     } | ||||
|  | ||||
|  | ||||
| @ -93,4 +93,12 @@ public interface IBusProjectService extends IService<BusProject> { | ||||
|      */ | ||||
|     Page<BusProjectVo> getVoPage(Page<BusProject> projectPage); | ||||
|  | ||||
|     /** | ||||
|      * 校验用户是否拥有操作项目的权限 | ||||
|      * | ||||
|      * @param projectId 项目id | ||||
|      * @param userId    需要鉴权的用户id | ||||
|      */ | ||||
|     void validAuth(Long projectId, Long userId); | ||||
|  | ||||
| } | ||||
|  | ||||
| @ -273,4 +273,20 @@ public class BusProjectServiceImpl extends ServiceImpl<BusProjectMapper, BusProj | ||||
|         return projectVoPage; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 校验用户是否拥有操作项目的权限 | ||||
|      * | ||||
|      * @param projectId 项目对象 | ||||
|      * @param userId    需要鉴权的用户id | ||||
|      */ | ||||
|     @Override | ||||
|     public void validAuth(Long projectId, Long userId) { | ||||
|         QueryWrapper<BusUserProjectRelevancy> queryWrapper = new QueryWrapper<>(); | ||||
|         queryWrapper.eq("project_id", projectId); | ||||
|         queryWrapper.eq("user_id", userId); | ||||
|         if (userProjectRelevancyService.count(queryWrapper) <= 0) { | ||||
|             throw new ServiceException("当前用户无权限操作", HttpStatus.UNAUTHORIZED); | ||||
|         } | ||||
|     } | ||||
|  | ||||
| } | ||||
|  | ||||
| @ -13,14 +13,15 @@ import org.dromara.common.core.exception.ServiceException; | ||||
| import org.dromara.common.core.utils.ObjectUtils; | ||||
| import org.dromara.common.core.utils.StringUtils; | ||||
| import org.dromara.common.core.utils.sql.SqlUtil; | ||||
| import org.dromara.common.satoken.utils.LoginHelper; | ||||
| import org.dromara.project.domain.BusProjectTeam; | ||||
| import org.dromara.project.domain.req.projectteam.ProjectTeamCreateReq; | ||||
| import org.dromara.project.domain.req.projectteam.ProjectTeamQueryReq; | ||||
| import org.dromara.project.domain.req.projectteam.ProjectTeamUpdateReq; | ||||
| import org.dromara.project.domain.vo.BusProjectTeamVo; | ||||
| import org.dromara.project.mapper.BusProjectTeamMapper; | ||||
| import org.dromara.project.service.IBusProjectTeamService; | ||||
| import org.dromara.project.service.IBusProjectService; | ||||
| import org.dromara.project.service.IBusProjectTeamService; | ||||
| import org.springframework.beans.BeanUtils; | ||||
| import org.springframework.stereotype.Service; | ||||
| import org.springframework.transaction.annotation.Transactional; | ||||
| @ -100,7 +101,7 @@ public class BusProjectTeamServiceImpl extends ServiceImpl<BusProjectTeamMapper, | ||||
|         // 操作数据库 | ||||
|         boolean save = this.save(projectTeam); | ||||
|         if (!save) { | ||||
|             throw new ServiceException("新增施工人员失败,数据库异常", HttpStatus.ERROR); | ||||
|             throw new ServiceException("新增项目班组失败,数据库异常", HttpStatus.ERROR); | ||||
|         } | ||||
|         return projectTeam.getId(); | ||||
|     } | ||||
| @ -148,6 +149,9 @@ public class BusProjectTeamServiceImpl extends ServiceImpl<BusProjectTeamMapper, | ||||
|         if (projectService.getById(projectId) == null) { | ||||
|             throw new ServiceException("对应项目不存在", HttpStatus.NOT_FOUND); | ||||
|         } | ||||
|         // 判断用户是否对项目下的内容有操作权限 | ||||
|         Long userId = LoginHelper.getUserId(); | ||||
|         projectService.validAuth(projectId, userId); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|  | ||||
		Reference in New Issue
	
	Block a user