From 9397d9c341ff614fc2b665040e6777011d932e59 Mon Sep 17 00:00:00 2001 From: CD <1103614279@qq.com> Date: Mon, 14 Nov 2022 18:06:48 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BB=BB=E5=8A=A1=E7=A1=AE=E8=AE=A4=E8=AF=A2?= =?UTF-8?q?=E9=97=AE=E5=A2=9E=E5=8A=A0=E6=9D=83=E9=99=90=20+=20shiro?= =?UTF-8?q?=E7=99=BD=E5=90=8D=E5=8D=95=E5=A2=9E=E5=8A=A0=E5=B7=A5=E4=BD=9C?= =?UTF-8?q?=E6=B5=81=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/jero/config/shiro/ShiroConfig.java | 2 + .../impl/ParamsManifestEOServiceImpl.java | 4 +- .../ProjectUserPermissionController.java | 26 +++++++----- .../IProjectUserPermissionService.java | 9 ++++ .../ProjectUserPermissionServiceImpl.java | 42 +++++++++++++++++++ 5 files changed, 72 insertions(+), 11 deletions(-) diff --git a/jero-boot/jero-boot-base/jero-boot-base-core/src/main/java/com/jero/config/shiro/ShiroConfig.java b/jero-boot/jero-boot-base/jero-boot-base-core/src/main/java/com/jero/config/shiro/ShiroConfig.java index 6a49669a8..10d60668c 100644 --- a/jero-boot/jero-boot-base/jero-boot-base-core/src/main/java/com/jero/config/shiro/ShiroConfig.java +++ b/jero-boot/jero-boot-base/jero-boot-base-core/src/main/java/com/jero/config/shiro/ShiroConfig.java @@ -156,6 +156,8 @@ public class ShiroConfig { filterChainDefinitionMap.put("/todoCenter/processInfoEO/processCall", "anon"); // 流程信息明细表 工作流处理数据接口排除 filterChainDefinitionMap.put("/todoCenter/processInfoDetailEO/processCall", "anon"); + // 项目权限表 工作流处理数据接口排除 + filterChainDefinitionMap.put("/project/projectUserPermission/setPermission", "anon"); filterChainDefinitionMap.put("/lark/larkEventSubscriptionConfig", "anon"); //飞书调用接口,事件订阅配置。 filterChainDefinitionMap.put("/lark/larkCardMessageConfig", "anon"); //飞书调用接口,卡片消息配置。 diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/service/impl/ParamsManifestEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/service/impl/ParamsManifestEOServiceImpl.java index 90ac5c6ba..8588cedc8 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/service/impl/ParamsManifestEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/service/impl/ParamsManifestEOServiceImpl.java @@ -30,6 +30,7 @@ import com.jero.modules.cert.template.service.IParamsInfoPublishEOService; import com.jero.modules.cert.template.service.IParamsTemplateEOService; import com.jero.modules.project.entity.ProjectRelatedPersonnel; import com.jero.modules.project.service.IProjectRelatedPersonnelService; +import com.jero.modules.project.service.IProjectUserPermissionService; import com.jero.modules.system.entity.SysUser; import com.jero.modules.system.mapper.SysDictMapper; import com.jero.modules.system.service.ISysUserService; @@ -93,7 +94,8 @@ public class ParamsManifestEOServiceImpl extends ServiceImpl { + @Autowired + private IProjectUserPermissionService projectUserPermissionService; + /** + * 工作流调用设置权限 + * @param jsonObject + * @return + */ + @AutoLog(value = "工作流调用设置权限") + @ApiOperation(value="工作流调用设置权限", notes="工作流调用设置权限") + @PostMapping(value = "/setPermission") + public Result processCall(@RequestBody JSONObject jsonObject){ + return projectUserPermissionService.setPermission(jsonObject); + } } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/IProjectUserPermissionService.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/IProjectUserPermissionService.java index 68d27e21b..74bab81a9 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/IProjectUserPermissionService.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/IProjectUserPermissionService.java @@ -1,5 +1,7 @@ package com.jero.modules.project.service; +import com.alibaba.fastjson.JSONObject; +import com.jero.common.api.vo.Result; import com.jero.modules.project.entity.ProjectUserPermission; import com.baomidou.mybatisplus.extension.service.IService; import java.util.List; @@ -58,4 +60,11 @@ public interface IProjectUserPermissionService extends IService queryList(); + + /** + * 工作流调用设置权限 + * @param jsonObject + * @return + */ + Result setPermission(JSONObject jsonObject); } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectUserPermissionServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectUserPermissionServiceImpl.java index 500a8b351..831581962 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectUserPermissionServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectUserPermissionServiceImpl.java @@ -1,8 +1,17 @@ package com.jero.modules.project.service.impl; +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.jero.common.api.vo.Result; +import com.jero.common.system.vo.LoginUser; import com.jero.modules.project.entity.ProjectUserPermission; import com.jero.modules.project.mapper.ProjectUserPermissionMapper; import com.jero.modules.project.service.IProjectUserPermissionService; +import com.jero.modules.system.entity.SysUser; +import com.jero.modules.system.service.ISysUserService; +import org.apache.commons.lang3.ObjectUtils; +import org.apache.shiro.SecurityUtils; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.List; import java.util.Date; @@ -17,6 +26,9 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @Service public class ProjectUserPermissionServiceImpl extends ServiceImpl implements IProjectUserPermissionService { + @Autowired + private ISysUserService sysUserService; + /** * 保存 * @@ -86,4 +98,34 @@ public class ProjectUserPermissionServiceImpl extends ServiceImpl queryList() { return list(); } + + /** + * 工作流调用设置权限 + * @param jsonObject + * @return + */ + @Override + public Result setPermission(JSONObject jsonObject) { + Date now = new Date(); + QueryWrapper permissionQueryWrapper = new QueryWrapper<>(); + permissionQueryWrapper.eq("project_id",jsonObject.getString("projectLibraryId") ) + .eq("user_id",jsonObject.getString("userId") ) + .eq("belong", jsonObject.getString("belong")) + .eq("description",jsonObject.getString("description")); + + if (ObjectUtils.isEmpty(list(permissionQueryWrapper))) { + ProjectUserPermission projectUserPermission = new ProjectUserPermission(); + projectUserPermission.setDescription(jsonObject.getString("description")); + projectUserPermission.setBelong(jsonObject.getString("belong")); + projectUserPermission.setUserId(jsonObject.getString("userId")); + projectUserPermission.setProjectId(jsonObject.getString("projectLibraryId")); + projectUserPermission.setCreateTime(now); + projectUserPermission.setUpdateTime(now); + SysUser sysUser = sysUserService.getById(jsonObject.getString("currentUserId")); + projectUserPermission.setCreateBy(ObjectUtils.isEmpty(sysUser)?"":sysUser.getUsername()); + projectUserPermission.setUpdateBy(ObjectUtils.isEmpty(sysUser)?"":sysUser.getUsername()); + save(projectUserPermission); + } + return new Result<>().success("调用成功!"); + } }