|
@ -1,6 +1,23 @@ |
|
|
<template> |
|
|
<template> |
|
|
<div class="workflow-use"> |
|
|
<div class="workflow-use"> |
|
|
<WorkflowInfo v-if="done" :wf="this.node" :business="business" :workflowMoveID="$route.query.workflowMoveID" /> |
|
|
|
|
|
|
|
|
<div style="padding:10px 20px"> |
|
|
|
|
|
<el-steps :active="moves.length-1" :process-status="processStatus" finish-status="finish" align-center> |
|
|
|
|
|
<el-step v-for="(item, key) in moves" :key="key"> |
|
|
|
|
|
<div slot="title">{{ item.workflowNode.label }}</div> |
|
|
|
|
|
<div slot="description"> |
|
|
|
|
|
<div>节点说明:{{ item.workflowNode.description }}</div> |
|
|
|
|
|
<div>操作人:{{ item.promoter.nickName }}</div> |
|
|
|
|
|
<div>操作参数:{{ item.param||'无参数' }}</div> |
|
|
|
|
|
</div> |
|
|
|
|
|
</el-step> |
|
|
|
|
|
</el-steps> |
|
|
|
|
|
</div> |
|
|
|
|
|
<WorkflowInfo |
|
|
|
|
|
v-if="done" |
|
|
|
|
|
:wf="this.node" |
|
|
|
|
|
:business="business" |
|
|
|
|
|
:workflowMoveID="$route.query.workflowMoveID" |
|
|
|
|
|
/> |
|
|
</div> |
|
|
</div> |
|
|
</template> |
|
|
</template> |
|
|
<script> |
|
|
<script> |
|
@ -11,7 +28,34 @@ export default { |
|
|
return{ |
|
|
return{ |
|
|
done:false, |
|
|
done:false, |
|
|
business:null, |
|
|
business:null, |
|
|
node:null |
|
|
|
|
|
|
|
|
node:null, |
|
|
|
|
|
moves:[] |
|
|
|
|
|
} |
|
|
|
|
|
}, |
|
|
|
|
|
computed:{ |
|
|
|
|
|
processStatus(){ |
|
|
|
|
|
const node = this.moves[this.moves.length-1] |
|
|
|
|
|
if(node&&node.workflowNode.clazz == "end"){ |
|
|
|
|
|
if(node.workflowNode.success){ |
|
|
|
|
|
return "success" |
|
|
|
|
|
}else{ |
|
|
|
|
|
return "error" |
|
|
|
|
|
} |
|
|
|
|
|
}else{ |
|
|
|
|
|
return "process" |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
}, |
|
|
|
|
|
methods:{ |
|
|
|
|
|
createDone(){ |
|
|
|
|
|
let path = "" |
|
|
|
|
|
if(this.node.view){ |
|
|
|
|
|
path = this.node.view |
|
|
|
|
|
}else{ |
|
|
|
|
|
path = this.workflow.view |
|
|
|
|
|
} |
|
|
|
|
|
this.$options.components.WorkflowInfo = ()=>import("@/"+path) |
|
|
|
|
|
this.done = true |
|
|
} |
|
|
} |
|
|
}, |
|
|
}, |
|
|
async created(){ |
|
|
async created(){ |
|
@ -22,19 +66,21 @@ export default { |
|
|
if(res.code == 0){ |
|
|
if(res.code == 0){ |
|
|
this.workflow = res.data.workflow |
|
|
this.workflow = res.data.workflow |
|
|
this.node = res.data.workflow.nodes[0] |
|
|
this.node = res.data.workflow.nodes[0] |
|
|
this.done = true |
|
|
|
|
|
|
|
|
this.createDone() |
|
|
} |
|
|
} |
|
|
}else if(workflowMoveID){ |
|
|
}else if(workflowMoveID){ |
|
|
const res = await getWorkflowMoveByID({id:workflowMoveID}) |
|
|
const res = await getWorkflowMoveByID({id:workflowMoveID}) |
|
|
if(res.code == 0){ |
|
|
if(res.code == 0){ |
|
|
this.business = res.data.business |
|
|
this.business = res.data.business |
|
|
|
|
|
this.workflow = res.data.move.workflowProcess |
|
|
this.node = res.data.move.workflowNode |
|
|
this.node = res.data.move.workflowNode |
|
|
this.done = true |
|
|
|
|
|
|
|
|
this.moves = res.data.moves |
|
|
|
|
|
this.createDone() |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
}, |
|
|
}, |
|
|
beforeCreate(){ |
|
|
beforeCreate(){ |
|
|
this.$options.components.WorkflowInfo = ()=>import("@/"+this.node.view) |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
</script> |
|
|
</script> |