提交 ae0a6c59 authored 作者: whydesc's avatar whydesc

--工作流转办控制

上级 34fc9845
...@@ -753,7 +753,17 @@ ...@@ -753,7 +753,17 @@
submitData.values['targetUserId'] = formData.checkSendRole; submitData.values['targetUserId'] = formData.checkSendRole;
submitData.values['approvalType'] = 'role'; submitData.values['approvalType'] = 'role';
} }
const dataId = formUrl.value.split('=').pop();
submitData.values['dataId'] = dataId;
const lastEqualIndex = formUrl.value.lastIndexOf('=');
// 往前找到 & 或 ? 的位置
let startIndex = formUrl.value.lastIndexOf('&', lastEqualIndex);
if (startIndex === -1) {
startIndex = formUrl.value.lastIndexOf('?', lastEqualIndex);
}
const dataName = formUrl.value.substring(startIndex + 1, lastEqualIndex);
submitData.values['dataName'] = dataName;
// 执行发送 // 执行发送
......
...@@ -545,6 +545,8 @@ ...@@ -545,6 +545,8 @@
{ {
label: '待办', label: '待办',
ifShow: () => { ifShow: () => {
console.log("-------------record['uid'] ",record['uid']);
console.log("-------------userStore.getUserInfo.id ",userStore.getUserInfo.id);
if (record['bpmStatus'] == '2' && record['uid'] == userStore.getUserInfo.id) return true; if (record['bpmStatus'] == '2' && record['uid'] == userStore.getUserInfo.id) return true;
else return false; else return false;
}, },
......
...@@ -24,4 +24,5 @@ public interface SysDeployFormMapper extends BaseMapper<SysDeployForm> { ...@@ -24,4 +24,5 @@ public interface SysDeployFormMapper extends BaseMapper<SysDeployForm> {
FlowForm selectSysDeployFormByDeployId(String deployId); FlowForm selectSysDeployFormByDeployId(String deployId);
FlowForm selectSysFormByDeployId(String deployId); FlowForm selectSysFormByDeployId(String deployId);
int updateBisTabBpmStatus(FlowForm flowForm); int updateBisTabBpmStatus(FlowForm flowForm);
int updateBisTabUid(FlowForm flowForm);
} }
...@@ -23,4 +23,12 @@ ...@@ -23,4 +23,12 @@
deploy_id=#{formUrl} where ${formContent} deploy_id=#{formUrl} where ${formContent}
</update> </update>
<update id="updateBisTabUid" parameterType="org.jeecg.modules.flowable.apithird.business.entity.FlowForm">
update ${formTableName} set
<if test="formTp != null and formTp != ''">
uid=#{formTp}
</if>
where ${formContent}
</update>
</mapper> </mapper>
\ No newline at end of file
...@@ -14,4 +14,5 @@ public interface ISysDeployFormService extends IService<SysDeployForm> { ...@@ -14,4 +14,5 @@ public interface ISysDeployFormService extends IService<SysDeployForm> {
public FlowForm selectSysDeployFormByDeployId(String deployId); public FlowForm selectSysDeployFormByDeployId(String deployId);
public FlowForm selectSysFormByDeployId(String deployId); public FlowForm selectSysFormByDeployId(String deployId);
public int updateBisTabBpmStatus( FlowForm flowForm); public int updateBisTabBpmStatus( FlowForm flowForm);
public int updateBisTabUid( FlowForm flowForm);
} }
...@@ -42,6 +42,10 @@ public class SysDeployFormServiceImpl extends ServiceImpl<SysDeployFormMapper, S ...@@ -42,6 +42,10 @@ public class SysDeployFormServiceImpl extends ServiceImpl<SysDeployFormMapper, S
public int updateBisTabBpmStatus( FlowForm flowForm) { public int updateBisTabBpmStatus( FlowForm flowForm) {
return sysDeployFormMapper.updateBisTabBpmStatus(flowForm); return sysDeployFormMapper.updateBisTabBpmStatus(flowForm);
} }
@Override
public int updateBisTabUid( FlowForm flowForm) {
return sysDeployFormMapper.updateBisTabUid(flowForm);
}
......
...@@ -216,6 +216,18 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask ...@@ -216,6 +216,18 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask
myTaskFlowService.save(taskFlow); myTaskFlowService.save(taskFlow);
String tabname= sysForm.getFormTableName();
if(tabname!=null&&!tabname.equals("")&&zdmc!=null&&!zdmc.equals("")&&zdval!=null&&!zdval.equals("")){
String formContent=zdmc+"="+zdval;
FlowForm flowFormben=new FlowForm();
flowFormben.setFormTableName(tabname);
flowFormben.setFormContent(formContent);
flowFormben.setFormTp(approvalId);
sysDeployFormService.updateBisTabUid(flowFormben);
}
} }
...@@ -1096,6 +1108,94 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask ...@@ -1096,6 +1108,94 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask
// 3. (可选) 添加一条评论或日志,记录这次转办动作 // 3. (可选) 添加一条评论或日志,记录这次转办动作
//taskService.addComment(flowTaskVo.getTaskId(), null, originalUserId + " 将任务转办给 " + targetUserId); //taskService.addComment(flowTaskVo.getTaskId(), null, originalUserId + " 将任务转办给 " + targetUserId);
taskService.addComment(flowTaskVo.getTaskId(), flowTaskVo.getInstanceId(), curdate+loginUser.getRealname() + " 将任务转办给 " + targetuser.getRealname()); taskService.addComment(flowTaskVo.getTaskId(), flowTaskVo.getInstanceId(), curdate+loginUser.getRealname() + " 将任务转办给 " + targetuser.getRealname());
//写入代办
String zdval ="";
if(flowTaskVo.getValues().get("dataId")!=null){
zdval=flowTaskVo.getValues().get("dataId").toString();
}
String zdmc ="";
if(flowTaskVo.getValues().get("dataName")!=null){
zdmc=flowTaskVo.getValues().get("dataName").toString();
}
Task task = taskService.createTaskQuery().taskId(flowTaskVo.getTaskId()).singleResult();
// 处理表单数据
// Map<String, Object> formData = processFormData(task);
// 根据表单KEY查询表单定义
Long formId = Long.parseLong(task.getFormKey());
FlowForm sysForm = flowFormService.getById(formId); // 假设有这个方法
// 写入 待办
MyTask myTask = new MyTask();
myTask.setUid(targetUserId);
myTask.setTp(5);
myTask.setTarget(task.getName());
if(zdval!=null&&!zdval.equals("")){
myTask.setTargetId(zdval); //zdval
}
myTask.setStTime(new Date());
myTask.setTaskName("待处理");
myTask.setName(task.getName());
myTask.setSta(0);
myTask.setPriority("M");
myTask.setDes("");
//myTask.setLinkAddr("/project/plan/StPlanManList?"+zdmc+"="+zdval);
if(sysForm!=null){
myTask.setLinkAddr(sysForm.getFormListurl());
}
myTaskService.save(myTask);
// 4. 根据流程定义ID查询流程定义对象
ProcessDefinition processDefinition = repositoryService.createProcessDefinitionQuery()
.processDefinitionId(task.getProcessDefinitionId())
.singleResult();
String deploymentId ="";
if (processDefinition != null) {
// 获取部署ID - 这就是你想要的deployId
deploymentId = processDefinition.getDeploymentId();
}
//有了以上信息,可以向相关表写入 相关信息了
MyTaskFlow taskFlow=new MyTaskFlow();
taskFlow.setTaskId(task.getId());
taskFlow.setProcDefId(task.getProcessDefinitionId());
taskFlow.setProcInsId(task.getProcessInstanceId());
taskFlow.setExecutionId(task.getExecutionId());
if(zdval!=null&&!zdval.equals("")){
taskFlow.setTargetId(zdval);
}
taskFlow.setDeployId(deploymentId);
taskFlow.setFormTableName(sysForm.getFormTableName());
taskFlow.setUid(targetUserId);
taskFlow.setTaskDefinitionKey(task.getTaskDefinitionKey());
myTaskFlowService.save(taskFlow);
String tabname= sysForm.getFormTableName();
if(tabname!=null&&!tabname.equals("")&&zdmc!=null&&!zdmc.equals("")&&zdval!=null&&!zdval.equals("")){
String formContent=zdmc+"="+zdval;
FlowForm flowFormben=new FlowForm();
flowFormben.setFormTableName(tabname);
flowFormben.setFormContent(formContent);
flowFormben.setFormTp(targetUserId);
sysDeployFormService.updateBisTabUid(flowFormben);
}
} }
...@@ -2730,7 +2830,7 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask ...@@ -2730,7 +2830,7 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask
/** /**
* 转任务 * 转任务
* *
* @param flowTaskVo 请求实体参数 * @param flowTaskVo 请求实体参数
*/ */
......
...@@ -11,6 +11,7 @@ ...@@ -11,6 +11,7 @@
SELECT t.uid SELECT t.uid
FROM my_task_flow t FROM my_task_flow t
WHERE t.deploy_id=#{taskName} AND t.target_id=#{name} WHERE t.deploy_id=#{taskName} AND t.target_id=#{name}
order by id desc
LIMIT 1 LIMIT 1
</select> </select>
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论