!63 fix(bpm): 修复节点默认审批意见 MyBatis 查询缺失列,补充条件变量原始字段返回
* fix(bpm): 修复节点默认审批意见 MyBatis 查询缺失列,补充条件变量原始字段返回 * feat(bpm): 流程节点支持配置默认审批意见,按条件变量动态选择
This commit is contained in:
@@ -0,0 +1,8 @@
|
||||
-- 流程节点增加默认审批意见字段(双意见 + 条件变量)
|
||||
ALTER TABLE `ext_act_process_node` ADD COLUMN `default_opinion` varchar(500) NULL COMMENT '默认审批意见(条件变量=0时)' AFTER `allow_counter_sign_add_user`;
|
||||
ALTER TABLE `ext_act_process_node` ADD COLUMN `default_opinion2` varchar(500) NULL COMMENT '默认审批意见(条件变量=1时)' AFTER `default_opinion`;
|
||||
ALTER TABLE `ext_act_process_node` ADD COLUMN `default_opinion_var` varchar(100) NULL COMMENT '条件变量名' AFTER `default_opinion2`;
|
||||
|
||||
ALTER TABLE `ext_act_process_node_deploy` ADD COLUMN `default_opinion` varchar(500) NULL COMMENT '默认审批意见(条件变量=0时)' AFTER `msg_status`;
|
||||
ALTER TABLE `ext_act_process_node_deploy` ADD COLUMN `default_opinion2` varchar(500) NULL COMMENT '默认审批意见(条件变量=1时)' AFTER `default_opinion`;
|
||||
ALTER TABLE `ext_act_process_node_deploy` ADD COLUMN `default_opinion_var` varchar(100) NULL COMMENT '条件变量名' AFTER `default_opinion2`;
|
||||
+15
@@ -340,6 +340,21 @@ public class ActTaskController {
|
||||
map.put("rejectStatus", extActProcessNode.getRejectStatus());
|
||||
//是否允许转办 1是0否
|
||||
map.put("transferStatus", extActProcessNode.getTransferStatus());
|
||||
//默认审批意见 — 根据条件变量选择
|
||||
// 未填流程变量名 或 流程变量未找到时,默认使用 默认审批意见(变量=0)
|
||||
String defaultOpinion = extActProcessNode.getDefaultOpinion();
|
||||
String opinionVar = extActProcessNode.getDefaultOpinionVar();
|
||||
if (oConvertUtils.isNotEmpty(opinionVar)) {
|
||||
Object varValue = runtimeService.getVariable(task.getProcessInstanceId(), opinionVar);
|
||||
if (varValue != null && "1".equals(String.valueOf(varValue))) {
|
||||
defaultOpinion = extActProcessNode.getDefaultOpinion2();
|
||||
}
|
||||
}
|
||||
map.put("defaultOpinion", defaultOpinion);
|
||||
// 返回条件变量的 raw 值,供前端结合表单变量做二次解析 (extraVars > vars)
|
||||
map.put("defaultOpinionVar", extActProcessNode.getDefaultOpinionVar());
|
||||
map.put("defaultOpinionCond0", extActProcessNode.getDefaultOpinion());
|
||||
map.put("defaultOpinionCond1", extActProcessNode.getDefaultOpinion2());
|
||||
}
|
||||
//--update--end------author:scott-----date:20220705-----for:【VUEN-1332】流程节点配置智能化-------------
|
||||
|
||||
|
||||
+6
@@ -56,6 +56,12 @@ public class ExtActProcessNode implements Serializable {
|
||||
private String rejectStatus;
|
||||
/**会签节点是否允许加人0否 1允许*/
|
||||
private String allowCounterSignAddUser;
|
||||
/**默认审批意见(条件变量=0)*/
|
||||
private String defaultOpinion;
|
||||
/**默认审批意见(条件变量=1)*/
|
||||
private String defaultOpinion2;
|
||||
/**条件变量名*/
|
||||
private String defaultOpinionVar;
|
||||
//--update--end------author:scott-----date:20220705-----for:【VUEN-1332】流程节点配置智能化---------------
|
||||
|
||||
//--update--begin------ author: scott---date:20220908-----for: 节点扩展配置(存邮件\系统消息\钉钉推送的配置)---
|
||||
|
||||
+6
@@ -51,6 +51,12 @@ public class ExtActProcessNodeDeployment implements Serializable {
|
||||
private String selnextUserStatus;
|
||||
/**是否支持消息通知1是0否*/
|
||||
private String msgStatus;
|
||||
/**默认审批意见(条件变量=0)*/
|
||||
private String defaultOpinion;
|
||||
/**默认审批意见(条件变量=1)*/
|
||||
private String defaultOpinion2;
|
||||
/**条件变量名*/
|
||||
private String defaultOpinionVar;
|
||||
//--update--end------author:scott-----date:20220705-----for:【VUEN-1332】流程节点配置智能化---------------
|
||||
|
||||
//--update--begin------ author: scott---date:20220908-----for: 节点扩展配置(存邮件\系统消息\钉钉推送的配置)---
|
||||
|
||||
+12
-6
@@ -14,9 +14,9 @@
|
||||
<result column="node_bpm_status" property="nodeBpmStatus" jdbcType="VARCHAR"/>
|
||||
<result column="node_config_json" property="nodeConfigJson" jdbcType="VARCHAR"/>
|
||||
</resultMap>
|
||||
|
||||
|
||||
<select id="queryByNodeCodeAndProcessKey" resultMap="ExtActProcessNode">
|
||||
SELECT
|
||||
SELECT
|
||||
eapn.id
|
||||
,eapn.form_id
|
||||
,eapn.process_id
|
||||
@@ -35,6 +35,9 @@
|
||||
,eapn.add_sign_status
|
||||
,eapn.reject_status
|
||||
,eapn.allow_counter_sign_add_user
|
||||
,eapn.default_opinion
|
||||
,eapn.default_opinion2
|
||||
,eapn.default_opinion_var
|
||||
FROM ext_act_process_node eapn,
|
||||
ext_act_process eap
|
||||
WHERE eapn.process_id = eap.id
|
||||
@@ -48,15 +51,15 @@
|
||||
SELECT v.NAME_ AS name,
|
||||
v.TEXT_ AS val
|
||||
FROM ACT_RU_VARIABLE v
|
||||
WHERE v.TYPE_ != 'serializable'
|
||||
AND v.TYPE_ != 'bpmnParallelMultiInstanceCompleted'
|
||||
WHERE v.TYPE_ != 'serializable'
|
||||
AND v.TYPE_ != 'bpmnParallelMultiInstanceCompleted'
|
||||
AND v.TEXT_ is not null
|
||||
AND v.PROC_INST_ID_ = #{processId}
|
||||
</select>
|
||||
|
||||
|
||||
<!-- 查询流程的所有节点 -->
|
||||
<select id="queryAllNodesByProcessKey" resultMap="ExtActProcessNode">
|
||||
SELECT
|
||||
SELECT
|
||||
eapn.id
|
||||
,eapn.form_id
|
||||
,eapn.process_id
|
||||
@@ -75,6 +78,9 @@
|
||||
,eapn.add_sign_status
|
||||
,eapn.reject_status
|
||||
,eapn.allow_counter_sign_add_user
|
||||
,eapn.default_opinion
|
||||
,eapn.default_opinion2
|
||||
,eapn.default_opinion_var
|
||||
FROM ext_act_process_node eapn,
|
||||
ext_act_process eap
|
||||
WHERE eapn.process_id = eap.id
|
||||
|
||||
+3
@@ -204,6 +204,9 @@ public class ExtActProcessServiceImpl extends ServiceImpl<ExtActProcessMapper, E
|
||||
processnodeDeployment.setProcessId(node.getProcessId());
|
||||
processnodeDeployment.setProcessNodeCode(node.getProcessNodeCode());
|
||||
processnodeDeployment.setProcessNodeName(node.getProcessNodeName());
|
||||
processnodeDeployment.setDefaultOpinion(node.getDefaultOpinion());
|
||||
processnodeDeployment.setDefaultOpinion2(node.getDefaultOpinion2());
|
||||
processnodeDeployment.setDefaultOpinionVar(node.getDefaultOpinionVar());
|
||||
extActProcessNodeDeploymentMapper.insert(processnodeDeployment);
|
||||
}
|
||||
}
|
||||
|
||||
+5
-2
@@ -5,6 +5,7 @@ import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.flowable.engine.HistoryService;
|
||||
import org.flowable.engine.RuntimeService;
|
||||
import java.util.Objects;
|
||||
import org.jeecg.common.exception.JeecgBootException;
|
||||
import org.jeecg.common.util.oConvertUtils;
|
||||
import org.jeecg.common.system.vo.SelectTreeModel;
|
||||
@@ -72,8 +73,10 @@ public class BgXiSpeakServiceImpl extends ServiceImpl<BgXiSpeakMapper, BgXiSpeak
|
||||
}
|
||||
String old_pid = entity.getPid();
|
||||
String new_pid = bgXiSpeak.getPid();
|
||||
if(!old_pid.equals(new_pid)) {
|
||||
updateOldParentNode(old_pid);
|
||||
if(!Objects.equals(old_pid, new_pid)) {
|
||||
if (old_pid != null) {
|
||||
updateOldParentNode(old_pid);
|
||||
}
|
||||
if(oConvertUtils.isEmpty(new_pid)){
|
||||
bgXiSpeak.setPid(IBgXiSpeakService.ROOT_PID_VALUE);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user