流程执行接口 + 前端执行按钮 + SQL权限修正(flowlog/flowinstance) + execute权限 | 编译通过
This commit is contained in:
@@ -42,3 +42,11 @@ export function delFlowInstance(id) {
|
||||
method: 'delete'
|
||||
})
|
||||
}
|
||||
|
||||
// 执行流程
|
||||
export function executeFlowInstance(flowDefId) {
|
||||
return request({
|
||||
url: '/wcs/flow/instance/execute/' + flowDefId,
|
||||
method: 'post'
|
||||
})
|
||||
}
|
||||
|
||||
@@ -1,16 +1,16 @@
|
||||
<template>
|
||||
<div class="app-container">
|
||||
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="100px">
|
||||
<el-form-item label="<22><><EFBFBD>̶<EFBFBD><CCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" prop="processDefName">
|
||||
<el-form-item label="<22><><EFBFBD>̶<EFBFBD><CCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" prop="processDefName">
|
||||
<el-input
|
||||
v-model="queryParams.processDefName"
|
||||
placeholder="<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̶<EFBFBD><CCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
|
||||
placeholder="<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̶<EFBFBD><CCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
|
||||
clearable
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="״̬" prop="status">
|
||||
<el-select v-model="queryParams.status" placeholder="ʵ<><CAB5>״̬" clearable>
|
||||
<el-select v-model="queryParams.status" placeholder="ʵ<><CAB5>״̬" clearable>
|
||||
<el-option
|
||||
v-for="dict in statusOptions"
|
||||
:key="dict.value"
|
||||
@@ -20,8 +20,8 @@
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery"><EFBFBD><EFBFBD><EFBFBD><EFBFBD></el-button>
|
||||
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery"><EFBFBD><EFBFBD><EFBFBD><EFBFBD></el-button>
|
||||
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery"><EFBFBD><EFBFBD><EFBFBD><EFBFBD></el-button>
|
||||
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery"><EFBFBD><EFBFBD><EFBFBD><EFBFBD></el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
|
||||
@@ -34,7 +34,7 @@
|
||||
size="mini"
|
||||
@click="handleAdd"
|
||||
v-hasPermi="['wcs:flowinstance:add']"
|
||||
><EFBFBD><EFBFBD><EFBFBD><EFBFBD></el-button>
|
||||
><EFBFBD><EFBFBD><EFBFBD><EFBFBD></el-button>
|
||||
</el-col>
|
||||
<el-col :span="1.5">
|
||||
<el-button
|
||||
@@ -45,7 +45,7 @@
|
||||
:disabled="single"
|
||||
@click="handleUpdate"
|
||||
v-hasPermi="['wcs:flowinstance:edit']"
|
||||
><EFBFBD><EFBFBD></el-button>
|
||||
><EFBFBD><EFBFBD></el-button>
|
||||
</el-col>
|
||||
<el-col :span="1.5">
|
||||
<el-button
|
||||
@@ -56,7 +56,7 @@
|
||||
:disabled="multiple"
|
||||
@click="handleDelete"
|
||||
v-hasPermi="['wcs:flowinstance:remove']"
|
||||
>ɾ<EFBFBD><EFBFBD></el-button>
|
||||
>ɾ<EFBFBD><EFBFBD></el-button>
|
||||
</el-col>
|
||||
<el-col :span="1.5">
|
||||
<el-button
|
||||
@@ -66,32 +66,32 @@
|
||||
size="mini"
|
||||
@click="handleExport"
|
||||
v-hasPermi="['wcs:flowinstance:export']"
|
||||
><EFBFBD><EFBFBD><EFBFBD><EFBFBD></el-button>
|
||||
><EFBFBD><EFBFBD><EFBFBD><EFBFBD></el-button>
|
||||
</el-col>
|
||||
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
||||
</el-row>
|
||||
|
||||
<el-table v-loading="loading" :data="instanceList" @selection-change="handleSelectionChange">
|
||||
<el-table-column type="selection" width="55" align="center" />
|
||||
<el-table-column label="ʵ<><CAB5>ID" align="center" prop="instanceId" />
|
||||
<el-table-column label="<22><><EFBFBD>̶<EFBFBD><CCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" align="center" prop="processDefName" :show-overflow-tooltip="true" />
|
||||
<el-table-column label="ʵ<><CAB5>ID" align="center" prop="instanceId" />
|
||||
<el-table-column label="<22><><EFBFBD>̶<EFBFBD><CCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" align="center" prop="processDefName" :show-overflow-tooltip="true" />
|
||||
<el-table-column label="״̬" align="center" prop="status">
|
||||
<template slot-scope="scope">
|
||||
<el-tag :type="statusTagType(scope.row.status)">{{ statusLabel(scope.row.status) }}</el-tag>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="<22><>ʼʱ<CABC><CAB1>" align="center" prop="startTime" width="180">
|
||||
<el-table-column label="<22><>ʼʱ<CABC><CAB1>" align="center" prop="startTime" width="180">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ parseTime(scope.row.startTime) }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="<22><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>" align="center" prop="endTime" width="180">
|
||||
<el-table-column label="<22><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>" align="center" prop="endTime" width="180">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ parseTime(scope.row.endTime) }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="<22><>ע" align="center" prop="remark" :show-overflow-tooltip="true" />
|
||||
<el-table-column label="<22><><EFBFBD><EFBFBD>" align="center" class-name="small-padding fixed-width">
|
||||
<el-table-column label="<22><>ע" align="center" prop="remark" :show-overflow-tooltip="true" />
|
||||
<el-table-column label="<22><><EFBFBD><EFBFBD>" align="center" class-name="small-padding fixed-width">
|
||||
<template slot-scope="scope">
|
||||
<el-button
|
||||
size="mini"
|
||||
@@ -99,14 +99,21 @@
|
||||
icon="el-icon-edit"
|
||||
@click="handleUpdate(scope.row)"
|
||||
v-hasPermi="['wcs:flowinstance:edit']"
|
||||
><EFBFBD><EFBFBD></el-button>
|
||||
><EFBFBD><EFBFBD></el-button>
|
||||
<el-button
|
||||
size="mini"
|
||||
type="text"
|
||||
icon="el-icon-delete"
|
||||
@click="handleDelete(scope.row)"
|
||||
v-hasPermi="['wcs:flowinstance:remove']"
|
||||
>ɾ<EFBFBD><EFBFBD></el-button>
|
||||
>ɾ<EFBFBD><EFBFBD></el-button>
|
||||
<el-button
|
||||
size="mini"
|
||||
type="text"
|
||||
icon="el-icon-video-play"
|
||||
@click="handleExecute(scope.row)"
|
||||
v-hasPermi="['wcs:flowinstance:execute']"
|
||||
>执行</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
@@ -119,14 +126,14 @@
|
||||
@pagination="getList"
|
||||
/>
|
||||
|
||||
<!-- <EFBFBD><EFBFBD><EFBFBD>ӻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʵ<EFBFBD><EFBFBD><EFBFBD>Ի<EFBFBD><EFBFBD><EFBFBD> -->
|
||||
<!-- <EFBFBD><EFBFBD><EFBFBD>ӻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʵ<EFBFBD><EFBFBD><EFBFBD>Ի<EFBFBD><EFBFBD><EFBFBD> -->
|
||||
<el-dialog :title="title" :visible.sync="open" width="550px" append-to-body>
|
||||
<el-form ref="form" :model="form" :rules="rules" label-width="110px">
|
||||
<el-form-item label="<22><><EFBFBD>̶<EFBFBD><CCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" prop="processDefName">
|
||||
<el-input v-model="form.processDefName" placeholder="<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̶<EFBFBD><CCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" />
|
||||
<el-form-item label="<22><><EFBFBD>̶<EFBFBD><CCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" prop="processDefName">
|
||||
<el-input v-model="form.processDefName" placeholder="<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̶<EFBFBD><CCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" />
|
||||
</el-form-item>
|
||||
<el-form-item label="״̬" prop="status">
|
||||
<el-select v-model="form.status" placeholder="<22><>ѡ<EFBFBD><D1A1>״̬">
|
||||
<el-select v-model="form.status" placeholder="<22><>ѡ<EFBFBD><D1A1>״̬">
|
||||
<el-option
|
||||
v-for="dict in statusOptions"
|
||||
:key="dict.value"
|
||||
@@ -135,38 +142,38 @@
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="<22><>ʼʱ<CABC><CAB1>" prop="startTime">
|
||||
<el-form-item label="<22><>ʼʱ<CABC><CAB1>" prop="startTime">
|
||||
<el-date-picker
|
||||
v-model="form.startTime"
|
||||
type="datetime"
|
||||
placeholder="ѡ<><D1A1><EFBFBD><EFBFBD>ʼʱ<EFBFBD><EFBFBD>"
|
||||
placeholder="ѡ<><D1A1>ʼʱ<CABC><CAB1>"
|
||||
value-format="yyyy-MM-dd HH:mm:ss"
|
||||
style="width: 100%"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="<22><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>" prop="endTime">
|
||||
<el-form-item label="<22><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>" prop="endTime">
|
||||
<el-date-picker
|
||||
v-model="form.endTime"
|
||||
type="datetime"
|
||||
placeholder="ѡ<><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>"
|
||||
placeholder="ѡ<><D1A1><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>"
|
||||
value-format="yyyy-MM-dd HH:mm:ss"
|
||||
style="width: 100%"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="<22><>ע" prop="remark">
|
||||
<el-input v-model="form.remark" type="textarea" placeholder="<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" />
|
||||
<el-form-item label="<22><>ע" prop="remark">
|
||||
<el-input v-model="form.remark" type="textarea" placeholder="<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" />
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<div slot="footer" class="dialog-footer">
|
||||
<el-button type="primary" @click="submitForm">ȷ <EFBFBD><EFBFBD></el-button>
|
||||
<el-button @click="cancel">ȡ <EFBFBD><EFBFBD></el-button>
|
||||
<el-button type="primary" @click="submitForm">ȷ <EFBFBD><EFBFBD></el-button>
|
||||
<el-button @click="cancel">ȡ <EFBFBD><EFBFBD></el-button>
|
||||
</div>
|
||||
</el-dialog>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { listFlowInstance, getFlowInstance, delFlowInstance, addFlowInstance, updateFlowInstance } from "@/api/wcs/flowinstance"
|
||||
import { listFlowInstance, getFlowInstance, delFlowInstance, addFlowInstance, updateFlowInstance, executeFlowInstance } from "@/api/wcs/flowinstance"
|
||||
|
||||
export default {
|
||||
name: "WcsFlowInstance",
|
||||
@@ -182,10 +189,10 @@ export default {
|
||||
title: "",
|
||||
open: false,
|
||||
statusOptions: [
|
||||
{ value: "0", label: "<22><>ִ<EFBFBD><D6B4>" },
|
||||
{ value: "1", label: "ִ<><D6B4><EFBFBD><EFBFBD>" },
|
||||
{ value: "2", label: "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" },
|
||||
{ value: "3", label: "<22>쳣<EFBFBD><ECB3A3>ֹ" }
|
||||
{ value: "0", label: "<22><>ִ<EFBFBD><D6B4>" },
|
||||
{ value: "1", label: "ִ<><D6B4><EFBFBD><EFBFBD>" },
|
||||
{ value: "2", label: "<22><><EFBFBD><EFBFBD><EFBFBD>" },
|
||||
{ value: "3", label: "<22>쳣<EFBFBD><ECB3A3>ֹ" }
|
||||
],
|
||||
queryParams: {
|
||||
pageNum: 1,
|
||||
@@ -196,10 +203,10 @@ export default {
|
||||
form: {},
|
||||
rules: {
|
||||
processDefName: [
|
||||
{ required: true, message: "<22><><EFBFBD>̶<EFBFBD><CCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʋ<EFBFBD><C6B2><EFBFBD>Ϊ<EFBFBD><CEAA>", trigger: "blur" }
|
||||
{ required: true, message: "<22><><EFBFBD>̶<EFBFBD><CCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʋ<EFBFBD><C6B2><EFBFBD>Ϊ<EFBFBD><CEAA>", trigger: "blur" }
|
||||
],
|
||||
status: [
|
||||
{ required: true, message: "״̬<D7B4><CCAC><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>", trigger: "change" }
|
||||
{ required: true, message: "״̬<D7B4><CCAC><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>", trigger: "change" }
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -217,7 +224,7 @@ export default {
|
||||
})
|
||||
},
|
||||
statusLabel(status) {
|
||||
const map = { "0": "<22><>ִ<EFBFBD><D6B4>", "1": "ִ<><D6B4><EFBFBD><EFBFBD>", "2": "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", "3": "<22>쳣<EFBFBD><ECB3A3>ֹ" }
|
||||
const map = { "0": "<22><>ִ<EFBFBD><D6B4>", "1": "ִ<><D6B4><EFBFBD><EFBFBD>", "2": "<22><><EFBFBD><EFBFBD><EFBFBD>", "3": "<22>쳣<EFBFBD><ECB3A3>ֹ" }
|
||||
return map[status] || "δ֪"
|
||||
},
|
||||
statusTagType(status) {
|
||||
@@ -255,7 +262,7 @@ export default {
|
||||
handleAdd() {
|
||||
this.reset()
|
||||
this.open = true
|
||||
this.title = "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʵ<EFBFBD><CAB5>"
|
||||
this.title = "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʵ<EFBFBD><CAB5>"
|
||||
},
|
||||
handleUpdate(row) {
|
||||
this.reset()
|
||||
@@ -263,7 +270,7 @@ export default {
|
||||
getFlowInstance(instanceId).then(response => {
|
||||
this.form = response.data
|
||||
this.open = true
|
||||
this.title = "<22><EFBFBD><DEB8><EFBFBD><EFBFBD><EFBFBD>ʵ<EFBFBD><CAB5>"
|
||||
this.title = "<22><EFBFBD><DEB8><EFBFBD><EFBFBD><EFBFBD>ʵ<EFBFBD><CAB5>"
|
||||
})
|
||||
},
|
||||
submitForm() {
|
||||
@@ -271,13 +278,13 @@ export default {
|
||||
if (valid) {
|
||||
if (this.form.instanceId != undefined) {
|
||||
updateFlowInstance(this.form).then(() => {
|
||||
this.$modal.msgSuccess("<22>ijɹ<C4B3>")
|
||||
this.$modal.msgSuccess("<22>ijɹ<C4B3>")
|
||||
this.open = false
|
||||
this.getList()
|
||||
})
|
||||
} else {
|
||||
addFlowInstance(this.form).then(() => {
|
||||
this.$modal.msgSuccess("<22><><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD>")
|
||||
this.$modal.msgSuccess("<22><><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD>")
|
||||
this.open = false
|
||||
this.getList()
|
||||
})
|
||||
@@ -287,11 +294,20 @@ export default {
|
||||
},
|
||||
handleDelete(row) {
|
||||
const instanceIds = row.instanceId || this.ids
|
||||
this.$modal.confirm('<27>Ƿ<EFBFBD>ȷ<EFBFBD><C8B7>ɾ<EFBFBD><C9BE>ʵ<EFBFBD><CAB5>IDΪ"' + instanceIds + '"<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').then(function() {
|
||||
this.$modal.confirm('<27>Ƿ<EFBFBD>ȷ<EFBFBD><C8B7>ɾ<EFBFBD><C9BE>ʵ<EFBFBD><CAB5>IDΪ"' + instanceIds + '"<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').then(function() {
|
||||
return delFlowInstance(instanceIds)
|
||||
}).then(() => {
|
||||
this.getList()
|
||||
this.$modal.msgSuccess("ɾ<><C9BE><EFBFBD>ɹ<EFBFBD>")
|
||||
this.$modal.msgSuccess("ɾ<><C9BE><EFBFBD>ɹ<EFBFBD>")
|
||||
}).catch(() => {})
|
||||
},
|
||||
handleExecute(row) {
|
||||
const flowDefId = row.flowDefId
|
||||
this.$modal.confirm('是否确认执行流程定义ID为"' + flowDefId + '"的流程?').then(() => {
|
||||
return executeFlowInstance(flowDefId)
|
||||
}).then((response) => {
|
||||
this.$modal.msgSuccess("流程已启动,实例ID:" + response.data)
|
||||
this.getList()
|
||||
}).catch(() => {})
|
||||
},
|
||||
handleExport() {
|
||||
|
||||
Reference in New Issue
Block a user