From 3e402944a9f61dde58a9c10a2b8de8bf58b8d12a Mon Sep 17 00:00:00 2001 From: wangzhijiang <12345678> Date: Thu, 21 Apr 2022 19:02:37 +0800 Subject: [PATCH] =?UTF-8?q?=E9=A1=B9=E7=9B=AE=E5=BA=93-=E6=B3=95=E8=A7=84?= =?UTF-8?q?=E6=B8=85=E5=8D=95=E8=A1=A8-=E6=B5=81=E7=A8=8B=E8=B0=83?= =?UTF-8?q?=E7=94=A8=20=E5=A4=84=E7=90=86=E6=B3=95=E8=A7=84=E6=B8=85?= =?UTF-8?q?=E5=8D=95=E6=95=B0=E6=8D=AE=20=E6=8E=A5=E5=8F=A3=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/jero/config/shiro/ShiroConfig.java | 2 + .../ProjectLawsInventoryEOController.java | 14 ++++++ .../entity/ProjectLawsInventoryEO.java | 4 +- .../project/enums/OperatorTypeEnum.java | 8 ++++ .../project/enums/RequestSourceEnum.java | 43 +++++++++++++++++++ .../project/job/InventoryAffirmJob.java | 2 +- .../IProjectLawsInventoryEOService.java | 8 ++++ .../ProjectLawsInventoryEOServiceImpl.java | 39 ++++++++++++++++- 8 files changed, 116 insertions(+), 4 deletions(-) create mode 100644 jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/enums/RequestSourceEnum.java 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 6db7c1945..1bc155e90 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 @@ -139,6 +139,8 @@ public class ShiroConfig { filterChainDefinitionMap.put("/opensso/**", "anon"); //单点登录 + filterChainDefinitionMap.put("/project/projectLawsInventoryEO/processCall", "anon"); // 项目库-法规清单 工作流处理数据接口排除 + // 添加自己的过滤器并且取名为jwt Map filterMap = new HashMap(1); //如果cloudServer为空 则说明是单体 需要加载跨域配置 diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/controller/ProjectLawsInventoryEOController.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/controller/ProjectLawsInventoryEOController.java index eb62adacb..ce518e310 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/controller/ProjectLawsInventoryEOController.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/controller/ProjectLawsInventoryEOController.java @@ -5,6 +5,8 @@ import java.util.List; import java.util.Map; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; + +import com.alibaba.fastjson.JSONObject; import com.jero.common.api.vo.Result; import com.jero.common.system.query.QueryGenerator; import com.jero.modules.project.entity.ProjectLawsInventoryEO; @@ -192,4 +194,16 @@ public class ProjectLawsInventoryEOController extends JeroController processCall(@RequestBody JSONObject jsonObject){ + return this.projectLawsInventoryEOService.processCall(jsonObject); + } + } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/entity/ProjectLawsInventoryEO.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/entity/ProjectLawsInventoryEO.java index 898193217..d91a25ee8 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/entity/ProjectLawsInventoryEO.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/entity/ProjectLawsInventoryEO.java @@ -326,12 +326,12 @@ public class ProjectLawsInventoryEO implements Serializable { /**法规工程师提交状态 :0通过 1驳回 */ @ApiModelProperty(value = "法规工程师提交状态") - @TableField(updateStrategy = FieldStrategy.IGNORED) +// @TableField(updateStrategy = FieldStrategy.IGNORED) private String regulationOwnerSubmitStatus; //这两个只要有一个是拒绝 那么该数据的清单确认状态就为拒绝 /**认证工程师提交状态 :0通过 1驳回 */ @ApiModelProperty(value = "认证工程师提交状态") - @TableField(updateStrategy = FieldStrategy.IGNORED) +// @TableField(updateStrategy = FieldStrategy.IGNORED) private String homologationEngineerSubmitStatus; @TableField(exist = false) diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/enums/OperatorTypeEnum.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/enums/OperatorTypeEnum.java index d17ed6bc1..c1ba47c5f 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/enums/OperatorTypeEnum.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/enums/OperatorTypeEnum.java @@ -6,6 +6,14 @@ package com.jero.modules.project.enums; public enum OperatorTypeEnum { INVENTORY_AFFIRM("清单确认,studio工程师发起","0"), SUBMIT_OR_REJECTED("法规、认证工程师提交或拒绝","1"), + + /** + * 工作流调用后台操作类型 + */ + ADD("添加","add"), + UPDATE_STATUS("修改状态","updateStatus"), + DELETE("删除","delete"), + QUERY("查询","query"), ; String name; diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/enums/RequestSourceEnum.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/enums/RequestSourceEnum.java new file mode 100644 index 000000000..07584e6f4 --- /dev/null +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/enums/RequestSourceEnum.java @@ -0,0 +1,43 @@ +package com.jero.modules.project.enums; + +/** + * 请求来源枚举类 + */ +public enum RequestSourceEnum { + WORK_FLOW("工作流后台","workFlow"), + ; + + String name; + String value; + + private RequestSourceEnum(String name, String value) { + this.name = name; + this.value = value; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getValue() { + return value; + } + + public void setValue(String value) { + this.value = value; + } + + public static String getTextByValue(String value) { + RequestSourceEnum[] values = values(); + for (RequestSourceEnum requestSourceEnum : values) { + if (requestSourceEnum.value.equals(value)) { + return requestSourceEnum.name; + } + } + return null; + } +} diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/job/InventoryAffirmJob.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/job/InventoryAffirmJob.java index 166c9eab0..eff8ac413 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/job/InventoryAffirmJob.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/job/InventoryAffirmJob.java @@ -78,7 +78,7 @@ public class InventoryAffirmJob implements Job { for (ProjectLibraryBase projectLibraryBase : projectLibraryBaseList) { QueryWrapper projectNameInfoEOQueryWrapper = new QueryWrapper<>(); - projectNameInfoEOQueryWrapper.lambda().eq(ProjectNameInfoEO::getId,projectLibraryBase.getProjectName()); + projectNameInfoEOQueryWrapper.lambda().eq(ProjectNameInfoEO::getId,projectLibraryBase.getProjectNameId()); ProjectNameInfoEO projectNameInfoEO = projectNameInfoEOMapper.selectOne(projectNameInfoEOQueryWrapper); List threeDaysUserIdList = new ArrayList<>(); diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/IProjectLawsInventoryEOService.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/IProjectLawsInventoryEOService.java index a94b417ec..74144b866 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/IProjectLawsInventoryEOService.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/IProjectLawsInventoryEOService.java @@ -1,5 +1,6 @@ package com.jero.modules.project.service; +import com.alibaba.fastjson.JSONObject; import com.jero.common.api.vo.Result; import com.jero.modules.project.entity.ProjectLawsInventoryEO; import com.baomidou.mybatisplus.extension.service.IService; @@ -78,4 +79,11 @@ public interface IProjectLawsInventoryEOService extends IService matchRelevantPeople(Map params); + + /** + * 流程调用 + * @param jsonObject + * @return + */ + Result processCall(JSONObject jsonObject); } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectLawsInventoryEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectLawsInventoryEOServiceImpl.java index 33e115801..d800e755a 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectLawsInventoryEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectLawsInventoryEOServiceImpl.java @@ -571,7 +571,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl projectNameInfoEOQueryWrapper = new QueryWrapper<>(); - projectNameInfoEOQueryWrapper.lambda().eq(ProjectNameInfoEO::getId,projectLibraryBase.getProjectName()); + projectNameInfoEOQueryWrapper.lambda().eq(ProjectNameInfoEO::getId,projectLibraryBase.getProjectNameId()); ProjectNameInfoEO projectNameInfoEO = projectNameInfoEOMapper.selectOne(projectNameInfoEOQueryWrapper); //消息内容 @@ -865,4 +865,41 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl processCall(JSONObject jsonObject) { + String requestSource = jsonObject.getString("requestSource"); + if(StringUtils.isEmpty(requestSource)){ + throw new JeroBootException("请求来源不能为空!"); + } + if(!StringUtils.equals(requestSource,RequestSourceEnum.WORK_FLOW.getValue())){ + throw new JeroBootException("来源有误,没有权限调用该接口!"); + } + + String operatorType = jsonObject.getString("operatorType"); + if(StringUtils.isEmpty(operatorType)){ + throw new JeroBootException("操作类型不能为空!"); + } + + if(StringUtils.equals(operatorType,OperatorTypeEnum.UPDATE_STATUS.getValue())){ + ProjectLawsInventoryEO projectLawsInventoryEO = JSONObject.parseObject(jsonObject.toString(), ProjectLawsInventoryEO.class); + this.baseMapper.updateById(projectLawsInventoryEO); + } + if(StringUtils.equals(operatorType,OperatorTypeEnum.ADD.getValue())){ + + } + if(StringUtils.equals(operatorType,OperatorTypeEnum.DELETE.getValue())){ + + } + if(StringUtils.equals(operatorType,OperatorTypeEnum.QUERY.getValue())){ + + } + + return new Result<>().success("调用成功!"); + } }