Commit 25899d99885c68e40335e748f4b178e8ab613501

Authored by LesanOuO
1 parent 4364ef09

fix: 代码评审修改

yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/controller/admin/definition/vo/model/BpmModelMetaInfoVO.java
... ... @@ -82,13 +82,11 @@ public class BpmModelMetaInfoVO {
82 82 @Schema(description = "摘要设置", example = "{}")
83 83 private SummarySetting summarySetting;
84 84  
85   - // TODO @lesan:processBeforeTriggerSetting;要不叫这个?主要考虑,notify 留给后续的站内信、短信、邮件这种 notify 通知哈。
86 85 @Schema(description = "流程前置通知设置", example = "{}")
87   - private HttpRequestSetting PreProcessNotifySetting;
  86 + private HttpRequestSetting processBeforeTriggerSetting;
88 87  
89   - // TODO @lesan:processAfterTriggerSetting
90 88 @Schema(description = "流程后置通知设置", example = "{}")
91   - private HttpRequestSetting PostProcessNotifySetting;
  89 + private HttpRequestSetting processAfterTriggerSetting;
92 90  
93 91 @Schema(description = "流程 ID 规则")
94 92 @Data
... ...
yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/dal/dataobject/definition/BpmProcessDefinitionInfoDO.java
... ... @@ -188,16 +188,15 @@ public class BpmProcessDefinitionInfoDO extends BaseDO {
188 188 @TableField(typeHandler = JacksonTypeHandler.class)
189 189 private BpmModelMetaInfoVO.SummarySetting summarySetting;
190 190  
191   - // TODO @lesan:processBeforeTriggerSetting;要不叫这个?主要考虑,notify 留给后续的站内信、短信、邮件这种 notify 通知哈。
192 191 /**
193 192 * 流程前置通知设置
194 193 */
195 194 @TableField(typeHandler = JacksonTypeHandler.class, exist = false) // TODO @芋艿:临时注释 exist,因为要合并 master-jdk17
196   - private BpmModelMetaInfoVO.HttpRequestSetting PreProcessNotifySetting;
  195 + private BpmModelMetaInfoVO.HttpRequestSetting processBeforeTriggerSetting;
197 196 /**
198 197 * 流程后置通知设置
199 198 */
200 199 @TableField(typeHandler = JacksonTypeHandler.class, exist = false) // TODO @芋艿:临时注释 exist,因为要合并 master-jdk17
201   - private BpmModelMetaInfoVO.HttpRequestSetting PostProcessNotifySetting;
  200 + private BpmModelMetaInfoVO.HttpRequestSetting processAfterTriggerSetting;
202 201  
203 202 }
... ...
yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/framework/flowable/core/util/BpmHttpRequestUtils.java
... ... @@ -5,6 +5,7 @@ import cn.hutool.core.util.StrUtil;
5 5 import cn.iocoder.yudao.framework.common.core.KeyValue;
6 6 import cn.iocoder.yudao.framework.common.pojo.CommonResult;
7 7 import cn.iocoder.yudao.framework.common.util.json.JsonUtils;
  8 +import cn.iocoder.yudao.framework.common.util.spring.SpringUtils;
8 9 import cn.iocoder.yudao.module.bpm.controller.admin.definition.vo.model.simple.BpmSimpleModelNodeVO;
9 10 import cn.iocoder.yudao.module.bpm.enums.definition.BpmHttpRequestParamTypeEnum;
10 11 import cn.iocoder.yudao.module.bpm.service.task.BpmProcessInstanceService;
... ... @@ -40,11 +41,9 @@ public class BpmHttpRequestUtils {
40 41 List<BpmSimpleModelNodeVO.HttpRequestParam> headerParams,
41 42 List<BpmSimpleModelNodeVO.HttpRequestParam> bodyParams,
42 43 Boolean handleResponse,
43   - List<KeyValue<String, String>> response,
44   - // TODO @lesan:RestTemplate 直接通过 springUtil 获取好咧;
45   - RestTemplate restTemplate,
46   - // TODO @lesan:processInstanceService 直接通过 springUtil 获取好咧;
47   - BpmProcessInstanceService processInstanceService) {
  44 + List<KeyValue<String, String>> response) {
  45 + RestTemplate restTemplate = SpringUtils.getBean(RestTemplate.class);
  46 + BpmProcessInstanceService processInstanceService = SpringUtils.getBean(BpmProcessInstanceService.class);
48 47  
49 48 // 1.1 设置请求头
50 49 MultiValueMap<String, String> headers = buildHttpHeaders(processInstance, headerParams);
... ... @@ -55,27 +54,27 @@ public class BpmHttpRequestUtils {
55 54 ResponseEntity<String> responseEntity = sendHttpRequest(url, headers, body, restTemplate);
56 55  
57 56 // 3. 处理返回
58   - // TODO @lesan:可以用 if return,让括号小点
59   - if (Boolean.TRUE.equals(handleResponse)) {
60   - // 3.1 判断是否需要解析返回值
61   - if (responseEntity == null
62   - || StrUtil.isEmpty(responseEntity.getBody())
63   - || !responseEntity.getStatusCode().is2xxSuccessful()
64   - || CollUtil.isEmpty(response)) {
65   - return;
66   - }
67   - // 3.2 解析返回值, 返回值必须符合 CommonResult 规范。
68   - CommonResult<Map<String, Object>> respResult = JsonUtils.parseObjectQuietly(responseEntity.getBody(),
69   - new TypeReference<>() {});
70   - if (respResult == null || !respResult.isSuccess()) {
71   - return;
72   - }
73   - // 3.3 获取需要更新的流程变量
74   - Map<String, Object> updateVariables = getNeedUpdatedVariablesFromResponse(respResult.getData(), response);
75   - // 3.4 更新流程变量
76   - if (CollUtil.isNotEmpty(updateVariables)) {
77   - processInstanceService.updateProcessInstanceVariables(processInstance.getId(), updateVariables);
78   - }
  57 + if (Boolean.FALSE.equals(handleResponse)) {
  58 + return;
  59 + }
  60 + // 3.1 判断是否需要解析返回值
  61 + if (responseEntity == null
  62 + || StrUtil.isEmpty(responseEntity.getBody())
  63 + || !responseEntity.getStatusCode().is2xxSuccessful()
  64 + || CollUtil.isEmpty(response)) {
  65 + return;
  66 + }
  67 + // 3.2 解析返回值, 返回值必须符合 CommonResult 规范。
  68 + CommonResult<Map<String, Object>> respResult = JsonUtils.parseObjectQuietly(responseEntity.getBody(),
  69 + new TypeReference<>() {});
  70 + if (respResult == null || !respResult.isSuccess()) {
  71 + return;
  72 + }
  73 + // 3.3 获取需要更新的流程变量
  74 + Map<String, Object> updateVariables = getNeedUpdatedVariablesFromResponse(respResult.getData(), response);
  75 + // 3.4 更新流程变量
  76 + if (CollUtil.isNotEmpty(updateVariables)) {
  77 + processInstanceService.updateProcessInstanceVariables(processInstance.getId(), updateVariables);
79 78 }
80 79 }
81 80  
... ...
yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/task/BpmProcessInstanceServiceImpl.java
... ... @@ -122,9 +122,6 @@ public class BpmProcessInstanceServiceImpl implements BpmProcessInstanceService
122 122 @Resource
123 123 private BpmProcessIdRedisDAO processIdRedisDAO;
124 124  
125   - @Resource
126   - private RestTemplate restTemplate;
127   -
128 125 // ========== Query 查询相关方法 ==========
129 126  
130 127 @Override
... ... @@ -913,16 +910,14 @@ public class BpmProcessInstanceServiceImpl implements BpmProcessInstanceService
913 910 BpmProcessDefinitionInfoDO processDefinitionInfo = processDefinitionService.
914 911 getProcessDefinitionInfo(instance.getProcessDefinitionId());
915 912 if (ObjUtil.isNotNull(processDefinitionInfo) &&
916   - ObjUtil.isNotNull(processDefinitionInfo.getPostProcessNotifySetting())) {
917   - BpmModelMetaInfoVO.HttpRequestSetting setting = processDefinitionInfo.getPostProcessNotifySetting();
  913 + ObjUtil.isNotNull(processDefinitionInfo.getProcessAfterTriggerSetting())) {
  914 + BpmModelMetaInfoVO.HttpRequestSetting setting = processDefinitionInfo.getProcessAfterTriggerSetting();
918 915  
919 916 BpmHttpRequestUtils.executeBpmHttpRequest(instance,
920 917 setting.getUrl(),
921 918 setting.getHeader(),
922 919 setting.getBody(),
923   - true, setting.getResponse(),
924   - restTemplate,
925   - this);
  920 + true, setting.getResponse());
926 921 }
927 922 }
928 923 });
... ... @@ -935,18 +930,16 @@ public class BpmProcessInstanceServiceImpl implements BpmProcessInstanceService
935 930 // 流程前置通知
936 931 BpmProcessDefinitionInfoDO processDefinitionInfo = processDefinitionService.
937 932 getProcessDefinitionInfo(instance.getProcessDefinitionId());
938   - // TODO @lesan:if return 哈。减少括号。
939   - if (ObjUtil.isNotNull(processDefinitionInfo) &&
940   - ObjUtil.isNotNull(processDefinitionInfo.getPreProcessNotifySetting())) {
941   - BpmModelMetaInfoVO.HttpRequestSetting setting = processDefinitionInfo.getPreProcessNotifySetting();
942   - BpmHttpRequestUtils.executeBpmHttpRequest(instance,
943   - setting.getUrl(),
944   - setting.getHeader(),
945   - setting.getBody(),
946   - true, setting.getResponse(),
947   - restTemplate,
948   - this);
  933 + if (ObjUtil.isNull(processDefinitionInfo) ||
  934 + ObjUtil.isNull(processDefinitionInfo.getProcessBeforeTriggerSetting())) {
  935 + return;
949 936 }
  937 + BpmModelMetaInfoVO.HttpRequestSetting setting = processDefinitionInfo.getProcessBeforeTriggerSetting();
  938 + BpmHttpRequestUtils.executeBpmHttpRequest(instance,
  939 + setting.getUrl(),
  940 + setting.getHeader(),
  941 + setting.getBody(),
  942 + true, setting.getResponse());
950 943 });
951 944 }
952 945  
... ...
yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/task/listener/BpmUserTaskListener.java
... ... @@ -32,9 +32,6 @@ public class BpmUserTaskListener implements TaskListener {
32 32 @Resource
33 33 private BpmProcessInstanceService processInstanceService;
34 34  
35   - @Resource
36   - private RestTemplate restTemplate;
37   -
38 35 @Setter
39 36 private FixedValue listenerConfig;
40 37  
... ... @@ -58,9 +55,7 @@ public class BpmUserTaskListener implements TaskListener {
58 55 listenerHandler.getPath(),
59 56 listenerHandler.getHeader(),
60 57 listenerHandler.getBody(),
61   - false, null,
62   - restTemplate,
63   - processInstanceService);
  58 + false, null);
64 59  
65 60 // 3. 是否需要后续操作?TODO 芋艿:待定!
66 61 }
... ...
yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/task/trigger/http/BpmHttpCallbackTrigger.java
... ... @@ -22,9 +22,6 @@ import org.springframework.web.client.RestTemplate;
22 22 public class BpmHttpCallbackTrigger extends BpmAbstractHttpRequestTrigger {
23 23  
24 24 @Resource
25   - private RestTemplate restTemplate;
26   -
27   - @Resource
28 25 private BpmProcessInstanceService processInstanceService;
29 26  
30 27 @Override
... ... @@ -51,9 +48,7 @@ public class BpmHttpCallbackTrigger extends BpmAbstractHttpRequestTrigger {
51 48 setting.getUrl(),
52 49 setting.getHeader(),
53 50 setting.getBody(),
54   - false, null,
55   - restTemplate,
56   - processInstanceService);
  51 + false, null);
57 52 }
58 53  
59 54 }
... ...
yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/task/trigger/http/BpmSyncHttpRequestTrigger.java
... ... @@ -21,9 +21,6 @@ import org.springframework.web.client.RestTemplate;
21 21 public class BpmSyncHttpRequestTrigger extends BpmAbstractHttpRequestTrigger {
22 22  
23 23 @Resource
24   - private RestTemplate restTemplate;
25   -
26   - @Resource
27 24 private BpmProcessInstanceService processInstanceService;
28 25  
29 26 @Override
... ... @@ -46,9 +43,7 @@ public class BpmSyncHttpRequestTrigger extends BpmAbstractHttpRequestTrigger {
46 43 setting.getUrl(),
47 44 setting.getHeader(),
48 45 setting.getBody(),
49   - true, setting.getResponse(),
50   - restTemplate,
51   - processInstanceService);
  46 + true, setting.getResponse());
52 47 }
53 48  
54 49 }
... ...