!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());
|
map.put("rejectStatus", extActProcessNode.getRejectStatus());
|
||||||
//是否允许转办 1是0否
|
//是否允许转办 1是0否
|
||||||
map.put("transferStatus", extActProcessNode.getTransferStatus());
|
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】流程节点配置智能化-------------
|
//--update--end------author:scott-----date:20220705-----for:【VUEN-1332】流程节点配置智能化-------------
|
||||||
|
|
||||||
|
|||||||
+6
@@ -56,6 +56,12 @@ public class ExtActProcessNode implements Serializable {
|
|||||||
private String rejectStatus;
|
private String rejectStatus;
|
||||||
/**会签节点是否允许加人0否 1允许*/
|
/**会签节点是否允许加人0否 1允许*/
|
||||||
private String allowCounterSignAddUser;
|
private String allowCounterSignAddUser;
|
||||||
|
/**默认审批意见(条件变量=0)*/
|
||||||
|
private String defaultOpinion;
|
||||||
|
/**默认审批意见(条件变量=1)*/
|
||||||
|
private String defaultOpinion2;
|
||||||
|
/**条件变量名*/
|
||||||
|
private String defaultOpinionVar;
|
||||||
//--update--end------author:scott-----date:20220705-----for:【VUEN-1332】流程节点配置智能化---------------
|
//--update--end------author:scott-----date:20220705-----for:【VUEN-1332】流程节点配置智能化---------------
|
||||||
|
|
||||||
//--update--begin------ author: scott---date:20220908-----for: 节点扩展配置(存邮件\系统消息\钉钉推送的配置)---
|
//--update--begin------ author: scott---date:20220908-----for: 节点扩展配置(存邮件\系统消息\钉钉推送的配置)---
|
||||||
|
|||||||
+6
@@ -51,6 +51,12 @@ public class ExtActProcessNodeDeployment implements Serializable {
|
|||||||
private String selnextUserStatus;
|
private String selnextUserStatus;
|
||||||
/**是否支持消息通知1是0否*/
|
/**是否支持消息通知1是0否*/
|
||||||
private String msgStatus;
|
private String msgStatus;
|
||||||
|
/**默认审批意见(条件变量=0)*/
|
||||||
|
private String defaultOpinion;
|
||||||
|
/**默认审批意见(条件变量=1)*/
|
||||||
|
private String defaultOpinion2;
|
||||||
|
/**条件变量名*/
|
||||||
|
private String defaultOpinionVar;
|
||||||
//--update--end------author:scott-----date:20220705-----for:【VUEN-1332】流程节点配置智能化---------------
|
//--update--end------author:scott-----date:20220705-----for:【VUEN-1332】流程节点配置智能化---------------
|
||||||
|
|
||||||
//--update--begin------ author: scott---date:20220908-----for: 节点扩展配置(存邮件\系统消息\钉钉推送的配置)---
|
//--update--begin------ author: scott---date:20220908-----for: 节点扩展配置(存邮件\系统消息\钉钉推送的配置)---
|
||||||
|
|||||||
+6
@@ -35,6 +35,9 @@
|
|||||||
,eapn.add_sign_status
|
,eapn.add_sign_status
|
||||||
,eapn.reject_status
|
,eapn.reject_status
|
||||||
,eapn.allow_counter_sign_add_user
|
,eapn.allow_counter_sign_add_user
|
||||||
|
,eapn.default_opinion
|
||||||
|
,eapn.default_opinion2
|
||||||
|
,eapn.default_opinion_var
|
||||||
FROM ext_act_process_node eapn,
|
FROM ext_act_process_node eapn,
|
||||||
ext_act_process eap
|
ext_act_process eap
|
||||||
WHERE eapn.process_id = eap.id
|
WHERE eapn.process_id = eap.id
|
||||||
@@ -75,6 +78,9 @@
|
|||||||
,eapn.add_sign_status
|
,eapn.add_sign_status
|
||||||
,eapn.reject_status
|
,eapn.reject_status
|
||||||
,eapn.allow_counter_sign_add_user
|
,eapn.allow_counter_sign_add_user
|
||||||
|
,eapn.default_opinion
|
||||||
|
,eapn.default_opinion2
|
||||||
|
,eapn.default_opinion_var
|
||||||
FROM ext_act_process_node eapn,
|
FROM ext_act_process_node eapn,
|
||||||
ext_act_process eap
|
ext_act_process eap
|
||||||
WHERE eapn.process_id = eap.id
|
WHERE eapn.process_id = eap.id
|
||||||
|
|||||||
+3
@@ -204,6 +204,9 @@ public class ExtActProcessServiceImpl extends ServiceImpl<ExtActProcessMapper, E
|
|||||||
processnodeDeployment.setProcessId(node.getProcessId());
|
processnodeDeployment.setProcessId(node.getProcessId());
|
||||||
processnodeDeployment.setProcessNodeCode(node.getProcessNodeCode());
|
processnodeDeployment.setProcessNodeCode(node.getProcessNodeCode());
|
||||||
processnodeDeployment.setProcessNodeName(node.getProcessNodeName());
|
processnodeDeployment.setProcessNodeName(node.getProcessNodeName());
|
||||||
|
processnodeDeployment.setDefaultOpinion(node.getDefaultOpinion());
|
||||||
|
processnodeDeployment.setDefaultOpinion2(node.getDefaultOpinion2());
|
||||||
|
processnodeDeployment.setDefaultOpinionVar(node.getDefaultOpinionVar());
|
||||||
extActProcessNodeDeploymentMapper.insert(processnodeDeployment);
|
extActProcessNodeDeploymentMapper.insert(processnodeDeployment);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+5
-2
@@ -5,6 +5,7 @@ import lombok.RequiredArgsConstructor;
|
|||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.flowable.engine.HistoryService;
|
import org.flowable.engine.HistoryService;
|
||||||
import org.flowable.engine.RuntimeService;
|
import org.flowable.engine.RuntimeService;
|
||||||
|
import java.util.Objects;
|
||||||
import org.jeecg.common.exception.JeecgBootException;
|
import org.jeecg.common.exception.JeecgBootException;
|
||||||
import org.jeecg.common.util.oConvertUtils;
|
import org.jeecg.common.util.oConvertUtils;
|
||||||
import org.jeecg.common.system.vo.SelectTreeModel;
|
import org.jeecg.common.system.vo.SelectTreeModel;
|
||||||
@@ -72,8 +73,10 @@ public class BgXiSpeakServiceImpl extends ServiceImpl<BgXiSpeakMapper, BgXiSpeak
|
|||||||
}
|
}
|
||||||
String old_pid = entity.getPid();
|
String old_pid = entity.getPid();
|
||||||
String new_pid = bgXiSpeak.getPid();
|
String new_pid = bgXiSpeak.getPid();
|
||||||
if(!old_pid.equals(new_pid)) {
|
if(!Objects.equals(old_pid, new_pid)) {
|
||||||
updateOldParentNode(old_pid);
|
if (old_pid != null) {
|
||||||
|
updateOldParentNode(old_pid);
|
||||||
|
}
|
||||||
if(oConvertUtils.isEmpty(new_pid)){
|
if(oConvertUtils.isEmpty(new_pid)){
|
||||||
bgXiSpeak.setPid(IBgXiSpeakService.ROOT_PID_VALUE);
|
bgXiSpeak.setPid(IBgXiSpeakService.ROOT_PID_VALUE);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user