增加流程部署功能

pull/59/head
smallchill 7 years ago
parent 634e14c910
commit 8af7d66399
  1. 16
      src/api/flow/flow.js
  2. 20
      src/util/flow.js
  3. 12
      src/util/func.js
  4. 42
      src/views/flow/deploy.vue
  5. 2
      src/views/flow/follow.vue
  6. 5
      src/views/flow/manager.vue
  7. 7
      src/views/flow/model.vue
  8. 6
      src/views/work/claim.vue
  9. 6
      src/views/work/done.vue
  10. 6
      src/views/work/send.vue
  11. 6
      src/views/work/start.vue
  12. 8
      src/views/work/todo.vue

@ -63,6 +63,22 @@ export const changeState = (params) => {
})
}
export const deployUpload = (category, files) => {
const formData = new FormData();
formData.append('category', category);
files.forEach(file => {
formData.append('files', file);
});
return request({
headers: {
"Content-Type": "multipart/form-data"
},
url: '/api/blade-flow/manager/deploy-upload',
method: 'post',
data: formData
})
}
export const deleteDeployment = (deploymentIds) => {
return request({
url: '/api/blade-flow/manager/delete-deployment',

@ -0,0 +1,20 @@
/**
* 工作流统一分类格式
* @param category 分类字典号
* @returns {string}
*/
export function flowCategory(category) {
return `flow_${category}`;
}
/**
* 根据key获取流程路由
* @param routes
* @param key
*/
export function flowRoute(routes, key) {
const data = routes.filter(d => {
return d.routeKey === key;
});
return data.length === 0 ? [] : data[0].routeValue;
}

@ -78,15 +78,3 @@ export function split(str) {
return str ? String(str).split(',') : '';
}
/**
* 根据key获取流程路由
* @param routes
* @param key
*/
export function getFlowRoute(routes, key) {
const data = routes.filter(d => {
return d.routeKey === key;
});
return data.length === 0 ? [] : data[0].routeValue;
}

@ -5,14 +5,20 @@
</template>
<script>
import {deployUpload} from "@/api/flow/flow";
import {flowCategory} from "@/util/flow";
export default {
data() {
return {
form: {
flowCategory: '',
imgUrl: [],
file: {},
},
option: {
labelWidth: 120,
menuBtn: false,
column: [
{
label: '流程类型',
@ -38,28 +44,44 @@
loadText: '附件上传中,请稍等',
span: 24,
propsHttp: {
res: 'data.0'
res: 'data'
},
tip: '请上传 bpmn20.xml 标准格式文件',
action: '/api/blade-flow/manager/check-upload'
},
]
}
}
},
methods: {
uploadBefore(file, done, loading) {
console.log(file)
uploadBefore(file, done) {
this.$message.success('部署开始')
this.file = file;
done()
this.$message.success('上传前的方法')
},
uploadAfter(res, done, loading) {
console.log(res)
done()
this.$message.success('上传后的方法')
if (!this.form.flowCategory) {
this.$message.warning('清先选择流程类型');
loading()
return false;
}
if (res.success) {
deployUpload(flowCategory(this.form.flowCategory), [this.file]).then(res => {
const data = res.data;
if (data.success) {
this.$message.success('部署结束')
done()
} else {
this.$message.error(data.msg);
loading()
}
})
} else {
this.$message.warning('请上传 bpmn20.xml 标准格式文件');
loading()
return false;
}
},
submit() {
this.$message.success('当前数据' + JSON.stringify(this.form))
}
}
}
</script>

@ -34,8 +34,8 @@
</template>
<script>
import {followList, deleteProcessInstance} from "@/api/flow/flow";
import {mapGetters} from "vuex";
import {followList, deleteProcessInstance} from "@/api/flow/flow";
export default {
data() {

@ -103,8 +103,9 @@
</template>
<script>
import {managerList, changeState, deleteDeployment} from "@/api/flow/flow";
import {mapGetters} from "vuex";
import {managerList, changeState, deleteDeployment} from "@/api/flow/flow";
import {flowCategory} from "@/util/flow";
export default {
data() {
@ -292,7 +293,7 @@
onLoad(page, params = {}) {
const values = {
...params,
category: (params.category) ? `flow_${params.category}` : null
category: (params.category) ? flowCategory(params.category) : null
}
managerList(page.currentPage, page.pageSize, values).then(res => {
const data = res.data.data;

@ -110,10 +110,11 @@
</template>
<script>
import {getDictionary} from "@/api/system/dict";
import {modelList, removeModel, deployModel} from "@/api/flow/flow";
import {mapGetters} from "vuex";
import website from '@/config/website';
import {getDictionary} from "@/api/system/dict";
import {modelList, removeModel, deployModel} from "@/api/flow/flow";
import {flowCategory} from "@/util/flow";
export default {
data() {
@ -237,7 +238,7 @@
});
return;
}
deployModel({ modelId: this.selectionId, category: `flow_${this.categoryValue}` }).then(res =>{
deployModel({ modelId: this.selectionId, category: flowCategory(this.categoryValue) }).then(res =>{
const data = res.data;
if (data.success) {
this.$message({

@ -63,7 +63,7 @@
<script>
import {mapGetters} from "vuex";
import {claimList, claimTask} from "@/api/work/work";
import {getFlowRoute} from "@/util/func";
import {flowCategory, flowRoute} from "@/util/flow";
export default {
data() {
@ -165,7 +165,7 @@
});
},
handleDetail(row) {
this.$router.push({path: `/work/process/${getFlowRoute(this.flowRoutes, row.category)}/detail/${row.processInstanceId}/${row.businessId}`});
this.$router.push({path: `/work/process/${flowRoute(this.flowRoutes, row.category)}/detail/${row.processInstanceId}/${row.businessId}`});
},
handleImage(row) {
this.flowUrl = `/api/blade-flow/process/diagram-view?processInstanceId=${row.processInstanceId}`;
@ -174,7 +174,7 @@
onLoad(page, params = {}) {
const values = {
...params,
category: (params.category) ? `flow_${params.category}` : null
category: (params.category) ? flowCategory(params.category) : null
}
claimList(page.currentPage, page.pageSize, values).then(res => {
const data = res.data.data;

@ -56,7 +56,7 @@
<script>
import {mapGetters} from "vuex";
import {doneList} from "@/api/work/work";
import {getFlowRoute} from "@/util/func";
import {flowCategory, flowRoute} from "@/util/flow";
export default {
data() {
@ -141,7 +141,7 @@
this.selectionList = list;
},
handleDetail(row) {
this.$router.push({ path: `/work/process/${getFlowRoute(this.flowRoutes, row.category)}/detail/${row.processInstanceId}/${row.businessId}` });
this.$router.push({path: `/work/process/${flowRoute(this.flowRoutes, row.category)}/detail/${row.processInstanceId}/${row.businessId}`});
},
handleImage(row) {
this.flowUrl = `/api/blade-flow/process/diagram-view?processInstanceId=${row.processInstanceId}`;
@ -150,7 +150,7 @@
onLoad(page, params = {}) {
const values = {
...params,
category: (params.category) ? `flow_${params.category}` : null
category: (params.category) ? flowCategory(params.category) : null
}
doneList(page.currentPage, page.pageSize, values).then(res => {
const data = res.data.data;

@ -60,7 +60,7 @@
<script>
import {mapGetters} from "vuex";
import {sendList} from "@/api/work/work";
import {getFlowRoute} from "@/util/func";
import {flowCategory,flowRoute} from "@/util/flow";
export default {
data() {
@ -150,7 +150,7 @@
this.selectionList = list;
},
handleDetail(row) {
this.$router.push({ path: `/work/process/${getFlowRoute(this.flowRoutes, row.category)}/detail/${row.processInstanceId}/${row.businessId}` });
this.$router.push({ path: `/work/process/${flowRoute(this.flowRoutes, row.category)}/detail/${row.processInstanceId}/${row.businessId}` });
},
handleImage(row) {
this.flowUrl = `/api/blade-flow/process/diagram-view?processInstanceId=${row.processInstanceId}`;
@ -159,7 +159,7 @@
onLoad(page, params = {}) {
const values = {
...params,
category: (params.category) ? `flow_${params.category}` : null
category: (params.category) ? flowCategory(params.category) : null
}
sendList(page.currentPage, page.pageSize, values).then(res => {
const data = res.data.data;

@ -64,7 +64,7 @@
<script>
import {mapGetters} from "vuex";
import {startList} from "@/api/work/work";
import {getFlowRoute} from "@/util/func";
import {flowCategory,flowRoute} from "@/util/flow";
export default {
data() {
@ -154,7 +154,7 @@
},
handleStart(row) {
console.log(this.flowRoutes)
this.$router.push({path: `/work/process/${getFlowRoute(this.flowRoutes, row.category)}/form/${row.id}`});
this.$router.push({path: `/work/process/${flowRoute(this.flowRoutes, row.category)}/form/${row.id}`});
},
handleImage(row) {
this.flowUrl = `/api/blade-flow/process/resource-view?processDefinitionId=${row.id}`;
@ -163,7 +163,7 @@
onLoad(page, params = {}) {
const values = {
...params,
category: (params.category) ? `flow_${params.category}` : null
category: (params.category) ? flowCategory(params.category) : null
}
startList(page.currentPage, page.pageSize, values).then(res => {
const data = res.data.data;

@ -63,7 +63,7 @@
<script>
import {mapGetters} from "vuex";
import {todoList} from "@/api/work/work";
import {getFlowRoute} from "@/util/func";
import {flowCategory,flowRoute} from "@/util/flow";
export default {
data() {
@ -148,10 +148,10 @@
this.selectionList = list;
},
handleWork(row) {
this.$router.push({ path: `/work/process/${getFlowRoute(this.flowRoutes, row.category)}/handle/${row.taskId}/${row.processInstanceId}/${row.businessId}` });
this.$router.push({ path: `/work/process/${flowRoute(this.flowRoutes, row.category)}/handle/${row.taskId}/${row.processInstanceId}/${row.businessId}` });
},
handleDetail(row) {
this.$router.push({ path: `/work/process/${getFlowRoute(this.flowRoutes, row.category)}/detail/${row.processInstanceId}/${row.businessId}` });
this.$router.push({ path: `/work/process/${flowRoute(this.flowRoutes, row.category)}/detail/${row.processInstanceId}/${row.businessId}` });
},
handleImage(row) {
this.flowUrl = `/api/blade-flow/process/diagram-view?processInstanceId=${row.processInstanceId}`;
@ -160,7 +160,7 @@
onLoad(page, params = {}) {
const values = {
...params,
category: (params.category) ? `flow_${params.category}` : null
category: (params.category) ? flowCategory(params.category) : null
}
todoList(page.currentPage, page.pageSize, values).then(res => {
const data = res.data.data;

Loading…
Cancel
Save