Browse Source

工作流统一升级

master
陈裕财 5 years ago
parent
commit
db2e3ddb81
  1. 104
      src/views/mdp/workflow/biz/bizModel/BizModelMng.vue
  2. 132
      src/views/mdp/workflow/de/model/ModelMng.vue
  3. 1901
      src/views/mdp/workflow/hi/procinst/ProcinstMng.vue
  4. 40
      src/views/mdp/workflow/re/deployment/DeploymentMng.vue
  5. 12
      src/views/mdp/workflow/re/procdef/ProcdefListForBizStart.vue
  6. 74
      src/views/mdp/workflow/re/procdef/ProcdefListForParames.vue
  7. 669
      src/views/mdp/workflow/re/procdef/ProcdefListForSimpleStart.vue
  8. 1202
      src/views/mdp/workflow/re/procdef/ProcdefListForStart.vue
  9. 38
      src/views/mdp/workflow/re/procdef/ProcdefMng.vue
  10. 67
      src/views/mdp/workflow/re/procdef/ProcdefSuspend.vue
  11. 340
      src/views/mdp/workflow/re/procdefParames/ProcdefParamesSet.vue
  12. 2481
      src/views/mdp/workflow/ru/execution/ExecutionMng.vue
  13. 77
      src/views/mdp/workflow/ru/procinstParames/ProcinstParamesExecutionSet.vue
  14. 117
      src/views/mdp/workflow/ru/procinstParames/ProcinstParamesStartSet.vue
  15. 2871
      src/views/mdp/workflow/ru/task/TaskMng.vue

104
src/views/mdp/workflow/biz/bizModel/BizModelMng.vue

@ -3,14 +3,14 @@
<el-row class="app-container"> <el-row class="app-container">
<el-row> <el-row>
<el-input v-model="filters.key" style="width:30%;" placeholder="模糊查询"> <el-input v-model="filters.key" style="width:30%;" placeholder="模糊查询">
<template slot="append">
<el-button type="primary" v-loading="load.list" :disabled="load.list==true" v-on:click="searchBizModels" icon="el-icon-search">查询</el-button>
<template slot="append">
<el-button type="primary" v-loading="load.list" :disabled="load.list==true" v-on:click="searchBizModels" icon="el-icon-search">查询</el-button>
</template> </template>
</el-input>
<el-button type="primary" @click="showAdd" icon="el-icon-plus">业务模块</el-button>
<el-button type="danger" v-loading="load.del" @click="batchDel" :disabled="this.sels.length===0 || load.del==true" icon="el-icon-delete"></el-button>
</el-input>
<el-button @click="showAdd" icon="el-icon-plus" style="margin-left: 13px;">业务模块</el-button>
<el-button type="danger" v-loading="load.del" @click="batchDel" :disabled="this.sels.length===0 || load.del==true" icon="el-icon-delete">批量删除</el-button>
</el-row> </el-row>
<el-row style="padding-top:10px;">
<el-row style="padding-top:20px;">
<!--列表 BizModel mdp_biz_model--> <!--列表 BizModel mdp_biz_model-->
<el-table ref="table" :max-height="tableHeight" :data="bizModels" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;"> <el-table ref="table" :max-height="tableHeight" :data="bizModels" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table-column sortable type="selection" width="40"></el-table-column> <el-table-column sortable type="selection" width="40"></el-table-column>
@ -18,7 +18,7 @@
<el-table-column sortable prop="bizName" label="业务名称" min-width="80" show-overflow-tooltip></el-table-column> <el-table-column sortable prop="bizName" label="业务名称" min-width="80" show-overflow-tooltip></el-table-column>
<el-table-column sortable prop="bizKey" label="业务编码" min-width="80" show-overflow-tooltip></el-table-column> <el-table-column sortable prop="bizKey" label="业务编码" min-width="80" show-overflow-tooltip></el-table-column>
<el-table-column sortable prop="modelKey" label="模型编码" min-width="80" show-overflow-tooltip></el-table-column> <el-table-column sortable prop="modelKey" label="模型编码" min-width="80" show-overflow-tooltip></el-table-column>
<el-table-column sortable prop="modelName" label="模型名称" min-width="80" show-overflow-tooltip></el-table-column>
<el-table-column sortable prop="modelName" label="模型名称" min-width="80" show-overflow-tooltip></el-table-column>
<el-table-column label="操作" width="160" fixed="right" > <el-table-column label="操作" width="160" fixed="right" >
<template slot-scope="scope"> <template slot-scope="scope">
<el-button @click="showEdit( scope.row,scope.$index)" icon="el-icon-edit"></el-button> <el-button @click="showEdit( scope.row,scope.$index)" icon="el-icon-edit"></el-button>
@ -26,17 +26,17 @@
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
<el-pagination layout="total, sizes, prev, pager, next" @current-change="handleCurrentChange" @size-change="handleSizeChange" :page-sizes="[10,20, 50, 100, 500]" :current-page="pageInfo.pageNum" :page-size="pageInfo.pageSize" :total="pageInfo.total" style="float:right;"></el-pagination>
<el-pagination layout="total, sizes, prev, pager, next" @current-change="handleCurrentChange" @size-change="handleSizeChange" :page-sizes="[10,20, 50, 100, 500]" :current-page="pageInfo.pageNum" :page-size="pageInfo.pageSize" :total="pageInfo.total" style="float:right;"></el-pagination>
<!--编辑 BizModel mdp_biz_model界面--> <!--编辑 BizModel mdp_biz_model界面-->
<el-dialog title="修改业务模块" :visible.sync="editFormVisible" width="50%" :close-on-click-modal="false" append-to-body> <el-dialog title="修改业务模块" :visible.sync="editFormVisible" width="50%" :close-on-click-modal="false" append-to-body>
<biz-model-edit :disabled-select-model="!!modelKey" :biz-model="editForm" :visible="editFormVisible" @cancel="editFormVisible=false" @submit="afterEditSubmit"></biz-model-edit> <biz-model-edit :disabled-select-model="!!modelKey" :biz-model="editForm" :visible="editFormVisible" @cancel="editFormVisible=false" @submit="afterEditSubmit"></biz-model-edit>
</el-dialog> </el-dialog>
<!--新增 BizModel mdp_biz_model界面--> <!--新增 BizModel mdp_biz_model界面-->
<el-dialog title="新增业务模块" :visible.sync="addFormVisible" width="50%" :close-on-click-modal="false" append-to-body> <el-dialog title="新增业务模块" :visible.sync="addFormVisible" width="50%" :close-on-click-modal="false" append-to-body>
<biz-model-add :disabled-select-model="!!modelKey" :biz-model="addForm" :visible="addFormVisible" @cancel="addFormVisible=false" @submit="afterAddSubmit"></biz-model-add> <biz-model-add :disabled-select-model="!!modelKey" :biz-model="addForm" :visible="addFormVisible" @cancel="addFormVisible=false" @submit="afterAddSubmit"></biz-model-add>
</el-dialog>
</el-dialog>
</el-row> </el-row>
</el-row> </el-row>
</section> </section>
@ -50,8 +50,8 @@
import BizModelAdd from './BizModelAdd';// import BizModelAdd from './BizModelAdd';//
import BizModelEdit from './BizModelEdit';// import BizModelEdit from './BizModelEdit';//
import { mapGetters } from 'vuex' import { mapGetters } from 'vuex'
export default {
export default {
name:'BizModelMng', name:'BizModelMng',
props:["modelKey","modelName","visible"], props:["modelKey","modelName","visible"],
watch:{ watch:{
@ -61,7 +61,7 @@
this.addForm.modelKey=this.modelKey this.addForm.modelKey=this.modelKey
this.getBizModels(); this.getBizModels();
} }
} }
}, },
computed: { computed: {
@ -85,14 +85,14 @@
}, },
load:{ list: false, edit: false, del: false, add: false },//... load:{ list: false, edit: false, del: false, add: false },//...
sels: [],// sels: [],//
options:{},// params=[{categoryId:'0001',itemCode:'sex'}] {'sex':[{optionValue:'1',optionName:'',seqOrder:'1',fp:'',isDefault:'0'},{optionValue:'2',optionName:'',seqOrder:'2',fp:'',isDefault:'0'}]}
options:{},// params=[{categoryId:'0001',itemCode:'sex'}] {'sex':[{optionValue:'1',optionName:'',seqOrder:'1',fp:'',isDefault:'0'},{optionValue:'2',optionName:'',seqOrder:'2',fp:'',isDefault:'0'}]}
addFormVisible: false,//bizModel addFormVisible: false,//bizModel
//bizModel //bizModel
addForm: { addForm: {
bizName:'',bizKey:'',modelKey:'',modelName:'',id:'',branchId:'' bizName:'',bizKey:'',modelKey:'',modelName:'',id:'',branchId:''
}, },
editFormVisible: false,// editFormVisible: false,//
//bizModel //bizModel
editForm: { editForm: {
@ -100,13 +100,13 @@
}, },
tableHeight:300, tableHeight:300,
/**begin 自定义属性请在下面加 请加备注**/ /**begin 自定义属性请在下面加 请加备注**/
/**end 自定义属性请在上面加 请加备注**/ /**end 自定义属性请在上面加 请加备注**/
} }
},//end data },//end data
methods: {
handleSizeChange(pageSize) {
this.pageInfo.pageSize=pageSize;
methods: {
handleSizeChange(pageSize) {
this.pageInfo.pageSize=pageSize;
this.getBizModels(); this.getBizModels();
}, },
handleCurrentChange(pageNum) { handleCurrentChange(pageNum) {
@ -128,7 +128,7 @@
this.getBizModels(); this.getBizModels();
}, },
searchBizModels(){ searchBizModels(){
this.pageInfo.count=true;
this.pageInfo.count=true;
this.getBizModels(); this.getBizModels();
}, },
// BizModel mdp_biz_model // BizModel mdp_biz_model
@ -141,9 +141,9 @@
}; };
if(this.pageInfo.orderFields!=null && this.pageInfo.orderFields.length>0){ if(this.pageInfo.orderFields!=null && this.pageInfo.orderFields.length>0){
let orderBys=[]; let orderBys=[];
for(var i=0;i<this.pageInfo.orderFields.length;i++){
for(var i=0;i<this.pageInfo.orderFields.length;i++){
orderBys.push(this.pageInfo.orderFields[i]+" "+this.pageInfo.orderDirs[i]) orderBys.push(this.pageInfo.orderFields[i]+" "+this.pageInfo.orderDirs[i])
}
}
params.orderBy= orderBys.join(",") params.orderBy= orderBys.join(",")
} }
if(this.filters.key!==""){ if(this.filters.key!==""){
@ -158,13 +158,13 @@
this.load.list = true; this.load.list = true;
listBizModel(params).then((res) => { listBizModel(params).then((res) => {
var tips=res.data.tips; var tips=res.data.tips;
if(tips.isOk){
if(tips.isOk){
this.pageInfo.total = res.data.total; this.pageInfo.total = res.data.total;
this.pageInfo.count=false; this.pageInfo.count=false;
this.bizModels = res.data.data; this.bizModels = res.data.data;
}else{ }else{
this.$message({ message: tips.msg, type: 'error' }); this.$message({ message: tips.msg, type: 'error' });
}
}
this.load.list = false; this.load.list = false;
}).catch( err => this.load.list = false ); }).catch( err => this.load.list = false );
}, },
@ -190,38 +190,38 @@
//bizModel //bizModel
selsChange: function (sels) { selsChange: function (sels) {
this.sels = sels; this.sels = sels;
},
},
//bizModel //bizModel
handleDel: function (row,index) {
handleDel: function (row,index) {
this.$confirm('确认删除该记录吗?', '提示', { this.$confirm('确认删除该记录吗?', '提示', {
type: 'warning' type: 'warning'
}).then(() => {
}).then(() => {
this.load.del=true; this.load.del=true;
let params = { id: row.id }; let params = { id: row.id };
delBizModel(params).then((res) => { delBizModel(params).then((res) => {
this.load.del=false; this.load.del=false;
var tips=res.data.tips; var tips=res.data.tips;
if(tips.isOk){
if(tips.isOk){
this.pageInfo.count=true; this.pageInfo.count=true;
this.getBizModels(); this.getBizModels();
} }
this.$message({ message: tips.msg, type: tips.isOk?'success':'error' });
this.$message({ message: tips.msg, type: tips.isOk?'success':'error' });
}).catch( err => this.load.del=false ); }).catch( err => this.load.del=false );
}); });
}, },
//bizModel //bizModel
batchDel: function () { batchDel: function () {
this.$confirm('确认删除选中记录吗?', '提示', { this.$confirm('确认删除选中记录吗?', '提示', {
type: 'warning' type: 'warning'
}).then(() => {
}).then(() => {
this.load.del=true; this.load.del=true;
batchDelBizModel(this.sels).then((res) => { batchDelBizModel(this.sels).then((res) => {
this.load.del=false; this.load.del=false;
var tips=res.data.tips; var tips=res.data.tips;
if( tips.isOk ){
if( tips.isOk ){
this.pageInfo.count=true; this.pageInfo.count=true;
this.getBizModels();
this.getBizModels();
} }
this.$message({ message: tips.msg, type: tips.isOk?'success':'error'}); this.$message({ message: tips.msg, type: tips.isOk?'success':'error'});
}).catch( err => this.load.del=false ); }).catch( err => this.load.del=false );
@ -231,28 +231,28 @@
this.$emit('row-click',row, event, column);// @row-click="rowClick" this.$emit('row-click',row, event, column);// @row-click="rowClick"
} }
/**begin 自定义函数请在下面加**/ /**begin 自定义函数请在下面加**/
/**end 自定义函数请在上面加**/ /**end 自定义函数请在上面加**/
},//end methods },//end methods
components: {
components: {
'biz-model-add':BizModelAdd, 'biz-model-add':BizModelAdd,
'biz-model-edit':BizModelEdit, 'biz-model-edit':BizModelEdit,
'sticky': Sticky 'sticky': Sticky
// //
}, },
mounted() {
mounted() {
this.addForm.modelKey=this.modelKey this.addForm.modelKey=this.modelKey
this.addForm.modelName=this.modelName this.addForm.modelName=this.modelName
this.editForm.modelKey=this.modelKey this.editForm.modelKey=this.modelKey
this.editForm.modelName=this.modelName this.editForm.modelName=this.modelName
this.$nextTick(() => {
this.$nextTick(() => {
var clientRect=this.$refs.table.$el.getBoundingClientRect(); var clientRect=this.$refs.table.$el.getBoundingClientRect();
var subHeight=70/1000 * window.innerHeight;
this.tableHeight = window.innerHeight -clientRect.y - this.$refs.table.$el.offsetTop-subHeight;
var subHeight=70/1000 * window.innerHeight;
this.tableHeight = window.innerHeight -clientRect.y - this.$refs.table.$el.offsetTop-subHeight;
this.getBizModels(); this.getBizModels();
});
});
} }
} }
@ -260,4 +260,18 @@
<style scoped> <style scoped>
</style>
</style>
<style>
.el-input-group__append, .el-input-group__prepend {
background-color: #409EFF!important;
color: #ffffff!important;
vertical-align: middle;
display: table-cell;
position: relative;
border: 1px solid #409EFF!important;
padding: 0 20px;
width: 1px;
white-space: nowrap;
}
</style>

132
src/views/mdp/workflow/de/model/ModelMng.vue

@ -1,38 +1,28 @@
<template> <template>
<section>
<section>
<el-row class="app-container"> <el-row class="app-container">
<el-row> <el-row>
<el-input v-model="filters.key" style="width:30%;" placeholder="模糊查询">
<template slot="append">
<el-button type="primary" v-on:click="searchModels" icon="el-icon-search">查询</el-button>
<el-input v-model="filters.key" style="width:270px;" placeholder="模糊查询">
<template slot="append">
<el-button type="primary" v-on:click="searchModels" icon="el-icon-search">查询</el-button>
</template> </template>
</el-input>
<el-button
</el-input>
<el-button style="margin-left: 13px;"
@click="handleDownload" @click="handleDownload"
icon="el-icon-download" icon="el-icon-download"
>导出数据</el-button> >导出数据</el-button>
</el-row> </el-row>
<el-row style="padding-top:10px;">
<el-row style="padding-top:20px;">
<!--列表 Model act_de_model--> <!--列表 Model act_de_model-->
<el-table ref="table" :max-height="tableHeight" :data="models" highlight-current-row v-loading="listLoading" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;"> <el-table ref="table" :max-height="tableHeight" :data="models" highlight-current-row v-loading="listLoading" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table-column type="index" width="40"></el-table-column>
<el-table-column type="index" width="40"></el-table-column>
<el-table-column prop="name" label="流程(点击查已发布版本)" min-width="300" show-overflow-tooltip> <el-table-column prop="name" label="流程(点击查已发布版本)" min-width="300" show-overflow-tooltip>
<template slot-scope="scope">
<el-link type="primary" @click="showDeploymentList( scope.row,scope.$index)">{{scope.row.name}} </el-link>
</template>
</el-table-column>
<el-table-column sortable prop="version" label="模型版本" min-width="80" show-overflow-tooltip></el-table-column>
<el-table-column prop="description" label="描述" width="120" show-overflow-tooltip>
<template slot-scope="scope"> <template slot-scope="scope">
<el-popover
placement="top-start"
title="描述"
width="400"
trigger="click"
:content="scope.row.description">
<el-button slot="reference">详细描述</el-button>
</el-popover>
<el-link type="primary" @click="showDeploymentList( scope.row,scope.$index)">{{scope.row.name}} </el-link>
</template> </template>
</el-table-column>
<el-table-column sortable prop="version" label="模型版本" min-width="100" show-overflow-tooltip></el-table-column>
<el-table-column prop="description" label="描述" width="120" show-overflow-tooltip>
</el-table-column> </el-table-column>
<el-table-column prop="modelComment" label="备注" min-width="80" show-overflow-tooltip></el-table-column> <el-table-column prop="modelComment" label="备注" min-width="80" show-overflow-tooltip></el-table-column>
@ -42,8 +32,8 @@
<el-table-column label="操作" width="300" fixed="right"> <el-table-column label="操作" width="300" fixed="right">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button @click="showDiagram( scope.row,scope.$index)">流程图</el-button> <el-button @click="showDiagram( scope.row,scope.$index)">流程图</el-button>
<el-button @click="deploy( scope.row,scope.$index)">发布新版</el-button>
<el-button type="danger" @click="handleDel(scope.row,scope.$index)"></el-button>
<el-button @click="deploy( scope.row,scope.$index)" type="primary" icon="el-icon-position"></el-button>
<el-button type="danger" @click="handleDel(scope.row,scope.$index)" icon="el-icon-delete"></el-button>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
@ -54,7 +44,7 @@
<img :src="diagramUrl"></img> <img :src="diagramUrl"></img>
</el-dialog> </el-dialog>
<el-dialog title="已发布的流程" :visible.sync="deploymentVisible" width="80%" :close-on-click-modal="false">
<el-dialog title="已发布的流程" :visible.sync="deploymentVisible" width="80%" :close-on-click-modal="false">
<deployment-mng :modelKey="editForm.modelKey"></deployment-mng> <deployment-mng :modelKey="editForm.modelKey"></deployment-mng>
</el-dialog> </el-dialog>
</el-row> </el-row>
@ -96,13 +86,13 @@
listLoading: false,//... listLoading: false,//...
sels: [],// sels: [],//
options:{},// options.sex,options.project options:{},// options.sex,options.project
addFormVisible: false,//model addFormVisible: false,//model
//model //model
addForm: { addForm: {
id:'',name:'',modelKey:'',description:'',modelComment:'',created:'',createdBy:'',lastUpdated:'',lastUpdatedBy:'',version:'',modelEditorJson:'',thumbnail:'',modelType:'' id:'',name:'',modelKey:'',description:'',modelComment:'',created:'',createdBy:'',lastUpdated:'',lastUpdatedBy:'',version:'',modelEditorJson:'',thumbnail:'',modelType:''
}, },
editFormVisible: false,// editFormVisible: false,//
//model //model
editForm: { editForm: {
@ -112,7 +102,7 @@
diagramVisible:false, diagramVisible:false,
diagramUrl:'', diagramUrl:'',
companyEmployees:[], companyEmployees:[],
companyDepts:[],
companyDepts:[],
deploymentVisible:false, deploymentVisible:false,
categorys:[], categorys:[],
tableHeight:300, tableHeight:300,
@ -128,9 +118,9 @@
return code[0].codeName return code[0].codeName
}else{ }else{
return codeValue return codeValue
}
}
}, },
handleSizeChange(pageSize) {
handleSizeChange(pageSize) {
this.pageInfo.pageSize=pageSize; this.pageInfo.pageSize=pageSize;
this.pageInfo.total=0; this.pageInfo.total=0;
this.pageInfo.pageNum=1; this.pageInfo.pageNum=1;
@ -156,7 +146,7 @@
}, },
searchModels(){ searchModels(){
this.pageInfo.pageNum=1; this.pageInfo.pageNum=1;
this.pageInfo.total=0;
this.pageInfo.total=0;
this.pageInfo.count=true this.pageInfo.count=true
this.getModels(); this.getModels();
}, },
@ -170,9 +160,9 @@
}; };
if(this.pageInfo.orderFields!=null && this.pageInfo.orderFields.length>0){ if(this.pageInfo.orderFields!=null && this.pageInfo.orderFields.length>0){
let orderBys=[]; let orderBys=[];
for(var i=0;i<this.pageInfo.orderFields.length;i++){
for(var i=0;i<this.pageInfo.orderFields.length;i++){
orderBys.push(this.pageInfo.orderFields[i]+" "+this.pageInfo.orderDirs[i]) orderBys.push(this.pageInfo.orderFields[i]+" "+this.pageInfo.orderDirs[i])
}
}
params.orderBy= orderBys.join(",") params.orderBy= orderBys.join(",")
} }
if(this.filters.key!==""){ if(this.filters.key!==""){
@ -182,17 +172,17 @@
listModel(params).then((res) => { listModel(params).then((res) => {
console.log(res) console.log(res)
var tips=res.data.tips; var tips=res.data.tips;
if(tips.isOk){
this.pageInfo.total = res.data.total;
if(tips.isOk){
this.pageInfo.total = res.data.total;
this.pageInfo.count=false this.pageInfo.count=false
this.models = res.data.data; this.models = res.data.data;
}else{ }else{
this.$message({ message: tips.msg, type: 'error' }); this.$message({ message: tips.msg, type: 'error' });
}
}
this.listLoading = false; this.listLoading = false;
}).catch(() => { }).catch(() => {
this.listLoading = false; this.listLoading = false;
}); });
}, },
@ -217,7 +207,7 @@
//model //model
selsChange: function (sels) { selsChange: function (sels) {
this.sels = sels; this.sels = sels;
},
},
//model //model
handleDel: function (row,index) { handleDel: function (row,index) {
this.$confirm('【不可逆操作】将永久删除该模型及有关的所有流程和任务,确认删除该记录吗?', '提示', { this.$confirm('【不可逆操作】将永久删除该模型及有关的所有流程和任务,确认删除该记录吗?', '提示', {
@ -228,17 +218,17 @@
delModel(params).then((res) => { delModel(params).then((res) => {
this.listLoading = false; this.listLoading = false;
var tips=res.data.tips; var tips=res.data.tips;
if(tips.isOk){
if(tips.isOk){
this.pageInfo.total=0; this.pageInfo.total=0;
this.pageInfo.count=true this.pageInfo.count=true
this.getModels(); this.getModels();
} }
this.$message({ message: tips.msg, type: tips.isOk?'success':'error' }); this.$message({ message: tips.msg, type: tips.isOk?'success':'error' });
}); });
}).catch(() => { }).catch(() => {
this.listLoading = false; this.listLoading = false;
}); });
}, },
//model //model
@ -251,16 +241,16 @@
batchDelModel(ids).then((res) => { batchDelModel(ids).then((res) => {
this.listLoading = false; this.listLoading = false;
var tips=res.data.tips; var tips=res.data.tips;
if( tips.isOk ){
this.pageInfo.total=0;
if( tips.isOk ){
this.pageInfo.total=0;
this.pageInfo.count=true this.pageInfo.count=true
this.getModels();
this.getModels();
} }
this.$message({ message: tips.msg, type: tips.isOk?'success':'error'}); this.$message({ message: tips.msg, type: tips.isOk?'success':'error'});
}); });
}).catch(() => { }).catch(() => {
this.listLoading = false; this.listLoading = false;
}); });
}, },
rowClick: function(row, event, column){ rowClick: function(row, event, column){
@ -273,16 +263,16 @@
}).then(() => { }).then(() => {
deployModel(row).then(res=>{ deployModel(row).then(res=>{
var tips=res.data.tips; var tips=res.data.tips;
if(tips.isOk){
this.getModels();
if(tips.isOk){
this.getModels();
}else{ }else{
this.$message({ message: tips.msg, type: 'error' }); this.$message({ message: tips.msg, type: 'error' });
} }
}); });
}).catch(() => { }).catch(() => {
this.listLoading = false; this.listLoading = false;
}); });
}, },
unDeploy: function(row, index){ unDeploy: function(row, index){
@ -292,22 +282,22 @@
unDeployModel(row).then(res=>{ unDeployModel(row).then(res=>{
var tips=res.data.tips; var tips=res.data.tips;
if(tips.isOk){ if(tips.isOk){
this.getModels();
this.getModels();
}else{ }else{
this.$message({ message: tips.msg, type: 'error' }); this.$message({ message: tips.msg, type: 'error' });
} }
}); });
}).catch(() => { }).catch(() => {
this.listLoading = false; this.listLoading = false;
}); });
},
},
// Model act_de_model // Model act_de_model
showDiagram: function ( row,index ) { showDiagram: function ( row,index ) {
this.diagramVisible = true; this.diagramVisible = true;
this.diagramUrl="/"+process.env.BASE_API+"/"+process.env.VERSION+"/"+config.getWorkflowBasePath()+"/mdp/workflow/de/model/diagram/"+row.id this.diagramUrl="/"+process.env.BASE_API+"/"+process.env.VERSION+"/"+config.getWorkflowBasePath()+"/mdp/workflow/de/model/diagram/"+row.id
},
},
showDeploymentList:function(row,index){ showDeploymentList:function(row,index){
this.editForm=row this.editForm=row
this.deploymentVisible=true; this.deploymentVisible=true;
@ -375,18 +365,18 @@
); );
} }
/**end 自定义函数请在上面加**/ /**end 自定义函数请在上面加**/
},//end methods },//end methods
components: {
components: {
'sticky': Sticky,DeploymentMng 'sticky': Sticky,DeploymentMng
// //
}, },
mounted() {
this.$nextTick(() => {
mounted() {
this.$nextTick(() => {
var clientRect=this.$refs.table.$el.getBoundingClientRect(); var clientRect=this.$refs.table.$el.getBoundingClientRect();
var subHeight=70/1000 * window.innerHeight;
this.tableHeight = window.innerHeight -clientRect.y - this.$refs.table.$el.offsetTop-subHeight;
var subHeight=70/1000 * window.innerHeight;
this.tableHeight = window.innerHeight -clientRect.y - this.$refs.table.$el.offsetTop-subHeight;
this.getModels(); this.getModels();
}); });
@ -395,11 +385,11 @@
let optionsParams={code:'all',fieldNames:['sex']}; let optionsParams={code:'all',fieldNames:['sex']};
selectCacheOptions(optionsParams).then(res=>{ selectCacheOptions(optionsParams).then(res=>{
this.options=res.data.data; this.options=res.data.data;
});
});
**/ **/
// //
//this.addForm.xxx=getDefaultValue(this.options.xxx,'1'); //this.addForm.xxx=getDefaultValue(this.options.xxx,'1');
/**在下面写其它函数***/ /**在下面写其它函数***/
} }
} }
@ -408,4 +398,18 @@
<style scoped> <style scoped>
</style>
</style>
<style>
.el-input-group__append, .el-input-group__prepend {
background-color: #409EFF!important;
color: #ffffff!important;
vertical-align: middle;
display: table-cell;
position: relative;
border: 1px solid #409EFF!important;
padding: 0 20px;
width: 1px;
white-space: nowrap;
}
</style>

1901
src/views/mdp/workflow/hi/procinst/ProcinstMng.vue
File diff suppressed because it is too large
View File

40
src/views/mdp/workflow/re/deployment/DeploymentMng.vue

@ -4,18 +4,18 @@
<el-row> <el-row>
<el-select v-model="filters.category" clearable filterable placeholder="请选择分类"> <el-select v-model="filters.category" clearable filterable placeholder="请选择分类">
<el-option v-for="item in categorys" :key="item" :label="item" :value="item"></el-option> <el-option v-for="item in categorys" :key="item" :label="item" :value="item"></el-option>
</el-select>
<el-input v-model="filters.key" style="width:30%;" placeholder="模糊查询">
<template slot="append">
<el-button type="primary" v-on:click="searchDeployments" icon="el-icon-search">查询</el-button>
</el-select>
<el-input v-model="filters.key" style="width:270px;margin-right: 13px;" placeholder="模糊查询">
<template slot="append">
<el-button type="primary" v-on:click="searchDeployments" icon="el-icon-search">查询</el-button>
</template> </template>
</el-input> </el-input>
<el-button @click="handleDownload" icon="el-icon-download">导出数据</el-button>
<el-button @click="handleDownload" icon="el-icon-download" style="">导出数据</el-button>
</el-row> </el-row>
<el-row style="padding-top:10px;">
<el-row style="padding-top:20px;">
<!--列表 Deployment act_re_deployment--> <!--列表 Deployment act_re_deployment-->
<el-table <el-table
ref="table" :max-height="tableHeight"
ref="table" :max-height="tableHeight"
:data="deployments" :data="deployments"
highlight-current-row highlight-current-row
v-loading="listLoading" v-loading="listLoading"
@ -26,7 +26,7 @@
> >
<el-table-column type="selection" width="40"></el-table-column> <el-table-column type="selection" width="40"></el-table-column>
<el-table-column type="index" width="40"></el-table-column> <el-table-column type="index" width="40"></el-table-column>
<el-table-column sortable prop="category" label="分类" min-width="80" show-overflow-tooltip></el-table-column> <el-table-column sortable prop="category" label="分类" min-width="80" show-overflow-tooltip></el-table-column>
<el-table-column sortable prop="key" label="业务编码" min-width="150" show-overflow-tooltip></el-table-column> <el-table-column sortable prop="key" label="业务编码" min-width="150" show-overflow-tooltip></el-table-column>
<el-table-column sortable prop="name" label="发布包名" min-width="300" show-overflow-tooltip></el-table-column> <el-table-column sortable prop="name" label="发布包名" min-width="300" show-overflow-tooltip></el-table-column>
@ -39,7 +39,7 @@
></el-table-column> ></el-table-column>
<el-table-column label="操作" width="150" fixed="right"> <el-table-column label="操作" width="150" fixed="right">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button type="danger" @click="handleDel(scope.row,scope.$index)">取消发布</el-button>
<el-button type="danger" @click="handleDel(scope.row,scope.$index)">下架当前版本</el-button>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
@ -381,10 +381,10 @@ export default {
this.categorys = res.data.data; this.categorys = res.data.data;
}); });
this.$nextTick(() => { this.$nextTick(() => {
var clientRect=this.$refs.table.$el.getBoundingClientRect(); var clientRect=this.$refs.table.$el.getBoundingClientRect();
var subHeight=70/1000 * window.innerHeight;
this.tableHeight = window.innerHeight -clientRect.y - this.$refs.table.$el.offsetTop-subHeight;
var subHeight=70/1000 * window.innerHeight;
this.tableHeight = window.innerHeight -clientRect.y - this.$refs.table.$el.offsetTop-subHeight;
this.getDeployments(); this.getDeployments();
}); });
} }
@ -392,4 +392,18 @@ export default {
</script> </script>
<style scoped> <style scoped>
</style>
</style>
<style>
.el-input-group__append, .el-input-group__prepend {
background-color: #409EFF!important;
color: #ffffff!important;
vertical-align: middle;
display: table-cell;
position: relative;
border: 1px solid #409EFF!important;
padding: 0 20px;
width: 1px;
white-space: nowrap;
}
</style>

12
src/views/mdp/workflow/re/procdef/ProcdefListForBizStart.vue

@ -28,13 +28,14 @@
data() { data() {
return { return {
filters: { filters: {
params:null,
/**
params:{ params:{
mainTitle:'xxxxxxx',
mainContext:'xxxx',
mainTitle:'',
mainContext:'',
bizUrl:'',// // bizUrl:'',// //
bizKey:'company_regit',//restUrl
restUrl:'xxxxxxxx',//
bizKey:'',//restUrl
restUrl:'',//
formId:'',//form formId:'',//form
formDataId:'',//form formDataId:'',//form
extVars:{ // extVars:{ //
@ -44,6 +45,7 @@
} }
} }
*/
}, },
/**end 自定义属性请在上面加 请加备注**/ /**end 自定义属性请在上面加 请加备注**/
} }

74
src/views/mdp/workflow/re/procdef/ProcdefListForParames.vue

@ -1,37 +1,26 @@
<template> <template>
<section> <section>
<el-row class="app-container">
<el-row>
<el-col :xs="4" :sm="4" :md="4" :lg="4" :xl="4" class="hidden-sm-and-down">
<category-tree
ref="categoryTree"
multiple
:expandOnClickNode="false"
:defaultExpandAll="true"
show-checkbox
:current-key="addForm.categoryId"
v-on:check-change="handleCategoryCheckChange"
></category-tree>
</el-col>
<el-col :xs="24" :sm="24" :md="20" :lg="20" :xl="20">
<el-row>
<el-row class="app-container">
<el-row>
<el-col>
<el-row>
<el-select v-model="filters.procCategory" clearable filterable placeholder="请选择分类"> <el-select v-model="filters.procCategory" clearable filterable placeholder="请选择分类">
<el-option v-for="item in categorys" :key="item" :label="item" :value="item"></el-option> <el-option v-for="item in categorys" :key="item" :label="item" :value="item"></el-option>
</el-select> </el-select>
<el-button @click.native="showTagSelect(false)">标签</el-button>
<el-input v-model="filters.key" style="width:20%;" placeholder="模糊查询">
<template slot="append">
<el-button type="primary" v-on:click="searchProcdefs" icon="el-icon-search">查询</el-button>
<el-input v-model="filters.key" style="width:270px;" placeholder="模糊查询">
<template slot="append">
<el-button type="primary" v-on:click="searchProcdefs" icon="el-icon-search">查询</el-button>
</template> </template>
</el-input>
<el-button type="primary" @click="handleDownload" icon="el-icon-download">导出数据</el-button>
<el-button @click.native="showTagSelect(true)">打标签</el-button>
</el-row>
<el-row style="padding-top:10px;">
</el-input>
<el-button @click.native="showTagSelect(false)" icon="el-icon-search" style="margin-left: 13px;" class="hidden-sm-and-down">标签</el-button>
<el-button @click.native="showTagSelect(true)" icon="el-icon-plus" class="hidden-sm-and-down">标签</el-button>
<el-button @click="handleDownload" icon="el-icon-download" class="hidden-md-and-down">导出数据</el-button>
</el-row>
<el-row style="padding-top:20px;">
<!--列表 Procdef act_re_procdef--> <!--列表 Procdef act_re_procdef-->
<el-table <el-table
ref="table" :max-height="tableHeight"
ref="table" :max-height="tableHeight"
:data="procdefs" :data="procdefs"
highlight-current-row highlight-current-row
v-loading="listLoading" v-loading="listLoading"
@ -44,10 +33,10 @@
<el-table-column type="index" width="40"></el-table-column> <el-table-column type="index" width="40"></el-table-column>
<el-table-column sortable prop="category" label="分类" min-width="80" show-overflow-tooltip></el-table-column> <el-table-column sortable prop="category" label="分类" min-width="80" show-overflow-tooltip></el-table-column>
<el-table-column sortable prop="name" label="流程(点击进入参数设置)" min-width="200" show-overflow-tooltip> <el-table-column sortable prop="name" label="流程(点击进入参数设置)" min-width="200" show-overflow-tooltip>
<template slot-scope="scope">
<template slot-scope="scope">
<el-link type="primary" @click="showProcdefParamesSet( scope.row,scope.$index)">{{scope.row.name}} </el-link> <el-link type="primary" @click="showProcdefParamesSet( scope.row,scope.$index)">{{scope.row.name}} </el-link>
</template> </template>
</el-table-column>
</el-table-column>
<el-table-column sortable prop="version" label="版本" min-width="80" show-overflow-tooltip></el-table-column> <el-table-column sortable prop="version" label="版本" min-width="80" show-overflow-tooltip></el-table-column>
<el-table-column sortable prop="tagNames" label="标签" min-width="80" show-overflow-tooltip> <el-table-column sortable prop="tagNames" label="标签" min-width="80" show-overflow-tooltip>
<template slot-scope="scope"> <template slot-scope="scope">
@ -62,7 +51,7 @@
prop="suspensionState" prop="suspensionState"
label="状态" label="状态"
min-width="80" min-width="80"
:formatter="formatterSuspensionState" :formatter="formatterSuspensionState"
></el-table-column> ></el-table-column>
<el-table-column sortable prop="key" label="模型编码" min-width="180" show-overflow-tooltip></el-table-column> <el-table-column sortable prop="key" label="模型编码" min-width="180" show-overflow-tooltip></el-table-column>
@ -78,14 +67,14 @@
width="200" width="200"
trigger="click" trigger="click"
:content="scope.row.description"> :content="scope.row.description">
<el-button slot="reference">细描述</el-button>
<el-button slot="reference"></el-button>
</el-popover> </el-popover>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="操作" width="220" fixed="right"> <el-table-column label="操作" width="220" fixed="right">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button type="primary" @click="showBizModelDialog(scope.row,scope.$index)">绑定业务</el-button>
<el-button @click="showDiagram( scope.row,scope.$index)">流程图</el-button> <el-button @click="showDiagram( scope.row,scope.$index)">流程图</el-button>
<el-button type="primary" @click="showBizModelDialog(scope.row,scope.$index)">绑定业务</el-button>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
@ -607,10 +596,10 @@ export default {
listCategorys({ tenantId: this.userInfo.branchId }).then(res => { listCategorys({ tenantId: this.userInfo.branchId }).then(res => {
this.categorys = res.data.data; this.categorys = res.data.data;
}); });
this.$nextTick(()=>{
this.$nextTick(()=>{
var clientRect=this.$refs.table.$el.getBoundingClientRect(); var clientRect=this.$refs.table.$el.getBoundingClientRect();
var subHeight=70/1000 * window.innerHeight;
this.tableHeight = window.innerHeight -clientRect.y - this.$refs.table.$el.offsetTop-subHeight;
var subHeight=70/1000 * window.innerHeight;
this.tableHeight = window.innerHeight -clientRect.y - this.$refs.table.$el.offsetTop-subHeight;
}) })
this.getProcdefs(); this.getProcdefs();
} }
@ -628,4 +617,19 @@ export default {
color: black; color: black;
font-weight: bold; font-weight: bold;
} }
</style>
</style>
<style>
.el-input-group__append, .el-input-group__prepend {
background-color: #409EFF!important;
color: #ffffff!important;
vertical-align: middle;
display: table-cell;
position: relative;
border: 1px solid #409EFF!important;
padding: 0 20px;
width: 1px;
white-space: nowrap;
}
</style>

669
src/views/mdp/workflow/re/procdef/ProcdefListForSimpleStart.vue

@ -1,322 +1,365 @@
<template> <template>
<section>
<el-row v-if="flowStartVisible==false" class="app-container">
<el-row >
<el-input v-model="filters.key" style="width:30%;" placeholder="模糊查询">
<template slot="append">
<el-button type="primary" v-loading="listLoading" :disabled="listLoading" v-on:click="searchProcdefs" icon="el-icon-search">查询</el-button>
</template>
</el-input>
<el-tag type="info" v-if="this.procdefs.length==0">如果没有找到流程请将业务编码{{this.filters.params.bizKey}}与流程进行关联</el-tag>
</el-row>
<el-row style="padding-top:10px;">
<!--列表 Procdef act_re_procdef-->
<el-table ref="procdefsTable" :max-height="tableHeight" :data="procdefs" highlight-current-row v-loading="listLoading" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table-column type="selection" width="40"></el-table-column>
<el-table-column type="index" width="40"></el-table-column>
<el-table-column sortable prop="category" label="分类" min-width="80" ></el-table-column>
<el-table-column sortable prop="name" label="流程名称" min-width="200"></el-table-column>
<el-table-column sortable prop="tagNames" label="标签" min-width="150" >
<template slot-scope="scope">
<el-tag v-for="tagName in (scope.row.tagNames?scope.row.tagNames.split(','):[])" :key="tagName">{{tagName}}</el-tag>
</template>
</el-table-column>
<el-table-column sortable prop="description" label="描述" min-width="200" ></el-table-column>
<el-table-column sortable prop="version" label="版本" min-width="80" ></el-table-column>
<el-table-column label="操作" :min-width="screenWidth>=500?200:80" fixed="right">
<template slot-scope="scope">
<el-button v-show="isSelectModel" @click="rowClick(scope.row,scope.$index)">选中</el-button>
<el-button type="primary" v-show="!isSelectModel" @click="showFlowStart(scope.row,scope.$index)">发起</el-button>
<el-button class="hidden-sm-and-down" @click="showDiagram( scope.row,scope.$index)">流程图</el-button>
</template>
</el-table-column>
</el-table>
<el-pagination layout="total, sizes, prev, pager, next" @current-change="handleCurrentChange" @size-change="handleSizeChange" :page-sizes="[10,20, 50, 100, 500]" :current-page="pageInfo.pageNum" :page-size="pageInfo.pageSize" :total="pageInfo.total" style="float:right;">
</el-pagination>
<!--流程图界面-->
<el-dialog title="流程图" :visible.sync="diagramVisible" width="80%" :close-on-click-modal="false">
<el-image :fit="'contain'" :src="diagramUrl">
<div slot="error" class="image-slot">
<i class="el-icon-picture-outline"></i>
</div>
<div slot="placeholder" class="image-slot">
正在全力加载中<i class="el-icon-loading"></i>
</div>
</el-image>
</el-dialog>
</el-row>
</el-row>
<el-row v-else-if="flowStartVisible==true">
<procinst-parames-start-set :procdef="addForm" :visible="flowStartVisible" :params="filters.params" @cancel="startCancel"></procinst-parames-start-set>
</el-row>
</section>
<section>
<el-row v-if="flowStartVisible==false" class="app-container">
<el-row>
<el-input v-model="filters.key" style="width:270px;" placeholder="模糊查询">
<template slot="append">
<el-button type="primary" v-loading="listLoading" :disabled="listLoading" v-on:click="searchProcdefs"
icon="el-icon-search">查询</el-button>
</template>
</el-input>
<el-tag type="info" v-if="this.procdefs.length==0">如果没有找到流程请将业务编码{{this.filters.params.bizKey}}与流程进行关联
</el-tag>
</el-row>
<el-row style="padding-top:20px;">
<!--列表 Procdef act_re_procdef-->
<el-table ref="procdefsTable" :max-height="tableHeight" :data="procdefs" highlight-current-row
v-loading="listLoading" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table-column type="selection" width="40"></el-table-column>
<el-table-column type="index" width="40"></el-table-column>
<el-table-column sortable prop="category" label="分类" min-width="80"></el-table-column>
<el-table-column sortable prop="name" label="流程名称" min-width="200"></el-table-column>
<el-table-column sortable prop="tagNames" label="标签" min-width="150">
<template slot-scope="scope">
<el-tag v-for="tagName in (scope.row.tagNames?scope.row.tagNames.split(','):[])" :key="tagName">
{{tagName}}</el-tag>
</template>
</el-table-column>
<el-table-column sortable prop="description" label="描述" min-width="200"></el-table-column>
<el-table-column sortable prop="version" label="版本" min-width="80"></el-table-column>
<el-table-column label="操作" :min-width="screenWidth>=500?200:80" fixed="right">
<template slot-scope="scope">
<el-button v-show="isSelectModel" @click="rowClick(scope.row,scope.$index)">选中</el-button>
<el-button type="primary" v-show="!isSelectModel" @click="showFlowStart(scope.row,scope.$index)">发起
</el-button>
<el-button class="hidden-sm-and-down" @click="showDiagram( scope.row,scope.$index)">流程图</el-button>
</template>
</el-table-column>
</el-table>
<el-pagination layout="total, sizes, prev, pager, next" @current-change="handleCurrentChange"
@size-change="handleSizeChange" :page-sizes="[10,20, 50, 100, 500]" :current-page="pageInfo.pageNum"
:page-size="pageInfo.pageSize" :total="pageInfo.total" style="float:right;">
</el-pagination>
<!--流程图界面-->
<el-dialog title="流程图" :visible.sync="diagramVisible" width="80%" :close-on-click-modal="false">
<el-image :fit="'contain'" :src="diagramUrl">
<div slot="error" class="image-slot">
<i class="el-icon-picture-outline"></i>
</div>
<div slot="placeholder" class="image-slot">
正在全力加载中<i class="el-icon-loading"></i>
</div>
</el-image>
</el-dialog>
</el-row>
</el-row>
<el-row v-else-if="flowStartVisible==true">
<procinst-parames-start-set :procdef="addForm" :visible="flowStartVisible" :params="filters.params"
@cancel="startCancel"></procinst-parames-start-set>
</el-row>
</section>
</template> </template>
<script> <script>
import util from '@/common/js/util';//
import config from '@/common/config';//
//import { selectCacheOptions,getDefaultValue,getCodeName } from '../../../../../api/common/code';//
import { listProcdef } from '@/api/mdp/workflow/re/procdef';
import ProcinstParamesStartSet from "../../ru/procinstParames/ProcinstParamesStartSet"
import Sticky from '@/components/Sticky' // header
import { mapGetters } from 'vuex'
export default {
name:'ProcdefListForBizStart',
props:['params','isSelectModel'],
computed: {
...mapGetters([
'userInfo'
]),
screenWidth:function(){
return screen.width;
},
},
watch:{
params:function(params){
this.filters.params=params;
this.searchProcdefs();
}
},
data() {
return {
filters: {
key: '',
procCategory:'',
categoryTreeNodes:[],
tags:[],
params:{
mainTitle:'',
mainContext:'',
bizUrl:'',// //
bizKey:'',//restUrl
restUrl:'',//
formId:'',//form
formDataId:'',//form
extVars:{ //
},
flowVars:{//,flowVarspostrestUrl
}
}
},
procdefs: [],//
pageInfo:{//
total:0,//0>0
pageSize:10,//
pageNum:1,//1
orderFields:[],// ['sex','student_id']
orderDirs:[],// asc,desc ['asc','desc']
count:true,
},
listLoading: false,//...
sels: [],//
options:{},// options.sex,options.project
addFormVisible: false,//procdef
//procdef
addForm: {
id:'',rev:'',category:'',name:'',key:'',version:'',deploymentId:'',resourceName:'',dgrmResourceName:'',description:'',hasStartFormKey:'',hasGraphicalNotation:'',suspensionState:'',tenantId:'',engineVersion:''
},
drawer:false,
/**begin 自定义属性请在下面加 请加备注**/
diagramVisible:false,//
diagramUrl:'',//
flowStartVisible:false,//
categorys:[],
tagSelectVisible:false,
isBatchSetProcTags:false,
tableHeight:300,
/**end 自定义属性请在上面加 请加备注**/
}
},//end data
methods: {
// getCodeName(options.sex,'1');
getCodeName(options,codeValue){
if(!options)return codeValue;
let code=options.filter(i=>i.codeValue==codeValue);
if(code.length>0){
return code[0].codeName
}else{
return codeValue
}
},
dialogWidth:function(){
if(screen.width>500){
return "80%";
}else{
return "100%";
}
},
handleSizeChange(pageSize) {
this.pageInfo.pageSize=pageSize;
this.pageInfo.total=0;
this.pageInfo.count=true
this.pageInfo.pageNum=1;
this.getProcdefs();
},
handleCurrentChange(pageNum) {
this.pageInfo.pageNum = pageNum;
this.getProcdefs();
},
// obj.order=ascending/descending, asc/desc ; obj.prop=,
sortChange( obj ){
var dir='asc';
if(obj.order=='ascending'){
dir='asc'
}else{
dir='desc';
}
if(obj.prop=='xxx'){
this.pageInfo.orderFields=['xxx'];
this.pageInfo.orderDirs=[dir];
}
this.getProcdefs();
},
searchProcdefs(){
this.pageInfo.pageNum=1;
this.pageInfo.total=0;
this.pageInfo.count=true
this.getProcdefs();
},
// Procdef act_re_procdef
getProcdefs() {
let params = {
pageSize: this.pageInfo.pageSize,
pageNum: this.pageInfo.pageNum,
total: this.pageInfo.total,
count:this.pageInfo.count
};
if(this.pageInfo.orderFields!=null && this.pageInfo.orderFields.length>0){
let orderBys=[];
for(var i=0;i<this.pageInfo.orderFields.length;i++){
orderBys.push(this.pageInfo.orderFields[i]+" "+this.pageInfo.orderDirs[i])
}
params.orderBy= orderBys.join(",")
}
if(this.filters.key!==""){
params.filtersKey='%'+this.filters.key+'%'
}
if(this.filters.category!==""){
params.category=this.filters.category
}
if(this.filters.params.formId!=""&& this.filters.params.formId!=null){
params.formId=this.filters.params.formId
}
if(this.filters.procCategory!='' && this.filters.procCategory!=null){
params.category=this.filters.procCategory
}
if(this.filters.categoryTreeNodes!=null && this.filters.categoryTreeNodes.length>0){
params.categoryIds=this.filters.categoryTreeNodes.map(i=>i.id)
}
if(this.filters.tags!=null && this.filters.tags.length>0){
params.tagIds=this.filters.tags.map(i=>i.tagId)
}
if(this.filters.params!=null && this.filters.params.bizKey!=null && this.filters.params.bizKey!=''){
params.bizKey=this.filters.params.bizKey
}
params.tenantId=this.userInfo.branchId
params.includeContext="1";
params.suspensionState=1;
this.listLoading = true;
listProcdef(params).then((res) => {
var tips=res.data.tips;
if(tips.isOk){
this.pageInfo.total = res.data.total
this.pageInfo.count=false
if(res.data.data.length==1){
this.addForm=res.data.data[0]
this.flowStartVisible=true;
}else if(res.data.data.length>1){
this.flowStartVisible=false;
this.$message.success("请选中一个流程")
}
this.procdefs = res.data.data;
}else{
this.$message({ message: tips.msg, type: 'error' });
}
this.listLoading = false;
}).catch(() => {
this.listLoading = false;
});
},
//procdef
selsChange: function (sels) {
this.sels = sels;
},
rowClick: function(row, event, column){
this.$emit('row-click',row, event, column);// @row-click="rowClick"
},
/**begin 自定义函数请在下面加**/
showDiagram: function ( row,index ) {
this.diagramVisible = true;
this.diagramUrl="/"+process.env.BASE_API+"/"+process.env.VERSION+"/"+config.getWorkflowBasePath()+"/mdp/workflow/re/procdef/diagram/"+row.id
},
showFlowStart: function ( row,index ) {
this.addForm=row;
this.flowStartVisible=true;
},
startCancel(){
this.$emit("closeTab");
}
/**end 自定义函数请在上面加**/
},//end methods
components: {
//
'procinst-parames-start-set':ProcinstParamesStartSet,
'sticky': Sticky,
},
mounted() {
if(this.params){
this.filters.params=this.params;
this.searchProcdefs();
}
this.$nextTick(()=>{
var clientRect=this.$refs.procdefsTable.$el.getBoundingClientRect();
var subHeight=70/1000 * window.innerHeight;
this.tableHeight = window.innerHeight -clientRect.y - this.$refs.procdefsTable.$el.offsetTop-subHeight;
})
}
}
import util from '@/common/js/util'; //
import config from '@/common/config'; //
//import { selectCacheOptions,getDefaultValue,getCodeName } from '../../../../../api/common/code';//
import {
listProcdef
} from '@/api/mdp/workflow/re/procdef';
import ProcinstParamesStartSet from "../../ru/procinstParames/ProcinstParamesStartSet"
import Sticky from '@/components/Sticky' // header
import {
mapGetters
} from 'vuex'
export default {
name: 'ProcdefListForBizStart',
props: ['params', 'isSelectModel'],
computed: {
...mapGetters([
'userInfo'
]),
screenWidth: function() {
return screen.width;
},
},
watch: {
params: function(params) {
this.filters.params = params;
this.searchProcdefs();
}
},
data() {
return {
filters: {
key: '',
procCategory: '',
categoryTreeNodes: [],
tags: [],
params: {
mainTitle: '',
mainContext: '',
bizUrl: '', // //
bizKey: '', //restUrl
restUrl: '', //
formId: '', //form
formDataId: '', //form
extVars: { //
},
flowVars: { //,flowVarspostrestUrl
}
}
},
procdefs: [], //
pageInfo: { //
total: 0, //0>0
pageSize: 10, //
pageNum: 1, //1
orderFields: [], // ['sex','student_id']
orderDirs: [], // asc,desc ['asc','desc']
count: true,
},
listLoading: false, //...
sels: [], //
options: {}, // options.sex,options.project
addFormVisible: false, //procdef
//procdef
addForm: {
id: '',
rev: '',
category: '',
name: '',
key: '',
version: '',
deploymentId: '',
resourceName: '',
dgrmResourceName: '',
description: '',
hasStartFormKey: '',
hasGraphicalNotation: '',
suspensionState: '',
tenantId: '',
engineVersion: ''
},
drawer: false,
/**begin 自定义属性请在下面加 请加备注**/
diagramVisible: false, //
diagramUrl: '', //
flowStartVisible: false, //
categorys: [],
tagSelectVisible: false,
isBatchSetProcTags: false,
tableHeight: 300,
/**end 自定义属性请在上面加 请加备注**/
}
}, //end data
methods: {
// getCodeName(options.sex,'1');
getCodeName(options, codeValue) {
if (!options) return codeValue;
let code = options.filter(i => i.codeValue == codeValue);
if (code.length > 0) {
return code[0].codeName
} else {
return codeValue
}
},
dialogWidth: function() {
if (screen.width > 500) {
return "80%";
} else {
return "100%";
}
},
handleSizeChange(pageSize) {
this.pageInfo.pageSize = pageSize;
this.pageInfo.total = 0;
this.pageInfo.count = true
this.pageInfo.pageNum = 1;
this.getProcdefs();
},
handleCurrentChange(pageNum) {
this.pageInfo.pageNum = pageNum;
this.getProcdefs();
},
// obj.order=ascending/descending, asc/desc ; obj.prop=,
sortChange(obj) {
var dir = 'asc';
if (obj.order == 'ascending') {
dir = 'asc'
} else {
dir = 'desc';
}
if (obj.prop == 'xxx') {
this.pageInfo.orderFields = ['xxx'];
this.pageInfo.orderDirs = [dir];
}
this.getProcdefs();
},
searchProcdefs() {
this.pageInfo.pageNum = 1;
this.pageInfo.total = 0;
this.pageInfo.count = true
this.getProcdefs();
},
// Procdef act_re_procdef
getProcdefs() {
let params = {
pageSize: this.pageInfo.pageSize,
pageNum: this.pageInfo.pageNum,
total: this.pageInfo.total,
count: this.pageInfo.count
};
if (this.pageInfo.orderFields != null && this.pageInfo.orderFields.length > 0) {
let orderBys = [];
for (var i = 0; i < this.pageInfo.orderFields.length; i++) {
orderBys.push(this.pageInfo.orderFields[i] + " " + this.pageInfo.orderDirs[i])
}
params.orderBy = orderBys.join(",")
}
if (this.filters.key !== "") {
params.filtersKey = '%' + this.filters.key + '%'
}
if (this.filters.category !== "") {
params.category = this.filters.category
}
if (this.filters.params.formId != "" && this.filters.params.formId != null) {
params.formId = this.filters.params.formId
}
if (this.filters.procCategory != '' && this.filters.procCategory != null) {
params.category = this.filters.procCategory
}
if (this.filters.categoryTreeNodes != null && this.filters.categoryTreeNodes.length > 0) {
params.categoryIds = this.filters.categoryTreeNodes.map(i => i.id)
}
if (this.filters.tags != null && this.filters.tags.length > 0) {
params.tagIds = this.filters.tags.map(i => i.tagId)
}
if (this.filters.params != null && this.filters.params.bizKey != null && this.filters.params.bizKey != '') {
params.bizKey = this.filters.params.bizKey
}
params.tenantId = this.userInfo.branchId
params.includeContext = "1";
params.suspensionState = 1;
this.listLoading = true;
listProcdef(params).then((res) => {
var tips = res.data.tips;
if (tips.isOk) {
this.pageInfo.total = res.data.total
this.pageInfo.count = false
if (res.data.data.length == 1) {
this.addForm = res.data.data[0]
this.flowStartVisible = true;
} else if (res.data.data.length > 1) {
this.flowStartVisible = false;
this.$message.success("请选中一个流程")
}
this.procdefs = res.data.data;
} else {
this.$message({
message: tips.msg,
type: 'error'
});
}
this.listLoading = false;
}).catch(() => {
this.listLoading = false;
});
},
//procdef
selsChange: function(sels) {
this.sels = sels;
},
rowClick: function(row, event, column) {
this.$emit('row-click', row, event, column); // @row-click="rowClick"
},
/**begin 自定义函数请在下面加**/
showDiagram: function(row, index) {
this.diagramVisible = true;
this.diagramUrl = "/" + process.env.BASE_API + "/" + process.env.VERSION + "/" + config
.getWorkflowBasePath() + "/mdp/workflow/re/procdef/diagram/" + row.id
},
showFlowStart: function(row, index) {
this.addForm = row;
this.flowStartVisible = true;
},
startCancel() {
this.$emit("closeTab");
}
/**end 自定义函数请在上面加**/
}, //end methods
components: {
//
'procinst-parames-start-set': ProcinstParamesStartSet,
'sticky': Sticky,
},
mounted() {
if (this.params) {
this.filters.params = this.params;
this.searchProcdefs();
}
this.$nextTick(() => {
var clientRect = this.$refs.procdefsTable.$el.getBoundingClientRect();
var subHeight = 70 / 1000 * window.innerHeight;
this.tableHeight = window.innerHeight - clientRect.y - this.$refs.procdefsTable.$el.offsetTop - subHeight;
})
}
}
</script> </script>
<style scoped> <style scoped>
.filters-show {
margin-left: 20px;
margin-top: 10px;
margin-bottom: 0px;
}
.filters-label {
font-size: 14px;
color: black;
font-weight: bold;
}
</style>
.filters-show {
margin-left: 20px;
margin-top: 10px;
margin-bottom: 0px;
}
.filters-label {
font-size: 14px;
color:black;
font-weight: bold;
}
</style>
<style>
.el-input-group__append,
.el-input-group__prepend {
background-color: #409EFF !important;
color: #ffffff !important;
vertical-align: middle;
display: table-cell;
position: relative;
border: 1px solid #409EFF !important;
padding: 0 20px;
width: 1px;
white-space: nowrap;
}
</style>

1202
src/views/mdp/workflow/re/procdef/ProcdefListForStart.vue
File diff suppressed because it is too large
View File

38
src/views/mdp/workflow/re/procdef/ProcdefMng.vue

@ -16,43 +16,7 @@
</el-select> </el-select>
<el-button @click.native="showTagSelect(false)" >标签查找</el-button> <el-button @click.native="showTagSelect(false)" >标签查找</el-button>
<el-button @click.native="showTagSelect(true)" >打标签</el-button> <el-button @click.native="showTagSelect(true)" >打标签</el-button>
</el-row>
<el-row class="filters-show">
<font class="filters-label">已选条件:</font>
<el-tag v-if="filters.tags"
:key="tag.tagId"
v-for="tag in filters.tags"
:type="''"
closable
:disable-transitions="false"
@close="handleFiltersTagClose(tag,'tags')">
{{tag.tagName}}
</el-tag>
<el-tag v-if="filters.categoryTreeNodes"
:key="tag.id"
v-for="tag in filters.categoryTreeNodes"
:type="'info'"
closable
:disable-transitions="false"
@close="handleFiltersTagClose(tag,'categoryTreeNodes')">
{{tag.name}}
</el-tag>
<el-tag v-if="filters.procCategory"
:type="'dangger'"
closable
:disable-transitions="false"
@close="handleFiltersTagClose('','procCategory')" >
{{filters.procCategory}}
</el-tag>
<el-tag v-if="filters.key"
:type="'success'"
closable
:disable-transitions="false"
@close="handleFiltersTagClose('','key')">
{{filters.key}}
</el-tag>
</el-row>
</el-row>
<el-row class="app-container"> <el-row class="app-container">
<el-col :xs="4" :sm="4" :md="4" :lg="4" :xl="4" class="hidden-sm-and-down"> <el-col :xs="4" :sm="4" :md="4" :lg="4" :xl="4" class="hidden-sm-and-down">
<category-tree ref="categoryTree" multiple :expandOnClickNode="false" :defaultExpandAll="true" show-checkbox :current-key="addForm.categoryId" v-on:check-change="handleCategoryCheckChange" ></category-tree> <category-tree ref="categoryTree" multiple :expandOnClickNode="false" :defaultExpandAll="true" show-checkbox :current-key="addForm.categoryId" v-on:check-change="handleCategoryCheckChange" ></category-tree>

67
src/views/mdp/workflow/re/procdef/ProcdefSuspend.vue

@ -1,35 +1,24 @@
<template> <template>
<section> <section>
<el-row class="app-container">
<el-col :xs="4" :sm="4" :md="4" :lg="4" :xl="4" class="hidden-sm-and-down">
<category-tree
ref="categoryTree"
multiple
:expandOnClickNode="false"
:defaultExpandAll="true"
show-checkbox
:current-key="addForm.categoryId"
v-on:check-change="handleCategoryCheckChange"
></category-tree>
</el-col>
<el-col :xs="24" :sm="24" :md="20" :lg="20" :xl="20">
<el-row class="app-container">
<el-col>
<el-row> <el-row>
<el-select v-model="filters.procCategory" clearable filterable placeholder="请选择分类"> <el-select v-model="filters.procCategory" clearable filterable placeholder="请选择分类">
<el-option v-for="item in categorys" :key="item" :label="item" :value="item"></el-option> <el-option v-for="item in categorys" :key="item" :label="item" :value="item"></el-option>
</el-select>
<el-button @click.native="showTagSelect(false)">标签查找</el-button>
<el-input v-model="filters.key" style="width:20%;" placeholder="模糊查询">
<template slot="append">
<el-button type="primary" v-on:click="searchProcdefs" icon="el-icon-search">查询</el-button>
</el-select>
<el-input v-model="filters.key" style="width:270px;" placeholder="模糊查询">
<template slot="append">
<el-button type="primary" v-on:click="searchProcdefs" icon="el-icon-search">查询</el-button>
</template> </template>
</el-input>
<el-button type="primary" @click="handleDownload" icon="el-icon-download">导出数据</el-button>
<el-button @click.native="showTagSelect(true)">打标签</el-button>
</el-row>
</el-input>
<el-button @click.native="showTagSelect(false)" icon="el-icon-search" style="margin-left: 13px;" class="hidden-sm-and-down">标签</el-button>
<el-button @click.native="showTagSelect(true)" icon="el-icon-plus" class="hidden-sm-and-down">标签</el-button>
<el-button @click="handleDownload" icon="el-icon-download" class="hidden-md-and-down">导出数据</el-button>
</el-row>
<!--列表 Procdef act_re_procdef--> <!--列表 Procdef act_re_procdef-->
<el-row style="padding-top:10px;">
<el-row style="padding-top:20px;">
<el-table <el-table
ref="table" :max-height="tableHeight"
ref="table" :max-height="tableHeight"
:data="procdefs" :data="procdefs"
highlight-current-row highlight-current-row
v-loading="listLoading" v-loading="listLoading"
@ -74,7 +63,7 @@
label="模型文件名称" label="模型文件名称"
min-width="80" min-width="80"
show-overflow-tooltip show-overflow-tooltip
></el-table-column>
></el-table-column>
<el-table-column <el-table-column
sortable sortable
prop="description" prop="description"
@ -82,7 +71,7 @@
min-width="80" min-width="80"
show-overflow-tooltip show-overflow-tooltip
></el-table-column> ></el-table-column>
<el-table-column label="操作" width="200" fixed="right" >
<el-table-column label="操作" width="220" fixed="right" >
<template slot-scope="scope"> <template slot-scope="scope">
<el-button @click="showDiagram( scope.row,scope.$index)">流程图</el-button> <el-button @click="showDiagram( scope.row,scope.$index)">流程图</el-button>
<el-button <el-button
@ -133,7 +122,7 @@
</el-dialog> </el-dialog>
</el-row> </el-row>
</el-col> </el-col>
</el-row>
</el-row>
</section> </section>
</template> </template>
@ -580,11 +569,11 @@ export default {
listCategorys({ tenantId: this.userInfo.branchId }).then(res => { listCategorys({ tenantId: this.userInfo.branchId }).then(res => {
this.categorys = res.data.data; this.categorys = res.data.data;
}); });
this.$nextTick(()=>{
this.$nextTick(()=>{
var clientRect=this.$refs.table.$el.getBoundingClientRect(); var clientRect=this.$refs.table.$el.getBoundingClientRect();
var subHeight=70/1000 * window.innerHeight;
this.tableHeight = window.innerHeight -clientRect.y - this.$refs.table.$el.offsetTop-subHeight;
var subHeight=70/1000 * window.innerHeight;
this.tableHeight = window.innerHeight -clientRect.y - this.$refs.table.$el.offsetTop-subHeight;
}) })
this.getProcdefs(); this.getProcdefs();
} }
@ -602,4 +591,18 @@ export default {
color: black; color: black;
font-weight: bold; font-weight: bold;
} }
</style>
</style>
<style>
.el-input-group__append, .el-input-group__prepend {
background-color: #409EFF!important;
color: #ffffff!important;
vertical-align: middle;
display: table-cell;
position: relative;
border: 1px solid #409EFF!important;
padding: 0 20px;
width: 1px;
white-space: nowrap;
}
</style>

340
src/views/mdp/workflow/re/procdefParames/ProcdefParamesSet.vue

@ -1,14 +1,14 @@
<template> <template>
<section> <section>
<el-row class="app-container">
<!--新增界面 ProcinstParames 流程实例参数设置表-->
<el-row class="app-container">
<!--新增界面 ProcinstParames 流程实例参数设置表-->
<el-col :span="24"> <el-col :span="24">
<!--新增界面 ProcdefParames 流程定义参数设置表-->
<el-form :model="addForm" label-width="120px" label-position="left" :rules="addFormRules" ref="addForm" v-loading="listLoading">
<!--新增界面 ProcdefParames 流程定义参数设置表-->
<el-form :model="addForm" label-width="120px" label-position="left" :rules="addFormRules" ref="addForm" v-loading="listLoading">
<el-form-item label="流程标题" prop="mainTitle"> <el-form-item label="流程标题" prop="mainTitle">
<el-input v-model="addForm.mainTitle" auto-complete="off"></el-input> <el-input v-model="addForm.mainTitle" auto-complete="off"></el-input>
</el-form-item>
<el-form-item label="标签" prop="tagNames">
</el-form-item>
<el-form-item label="流程标签" prop="tagNames">
<font v-if="addForm.tagNames"> <font v-if="addForm.tagNames">
<el-tag v-for="tag in (addForm.tagNames.split(','))" :key="tag" <el-tag v-for="tag in (addForm.tagNames.split(','))" :key="tag"
:type="'warning'" :type="'warning'"
@ -16,14 +16,14 @@
{{tag}} {{tag}}
</el-tag> </el-tag>
</font> </font>
{{addForm.tagNames?'':'还没有标签,去打一个呗-->'}}
<el-button @click.native="tagSelectVisible=true" :loading="addLoading">标签</el-button>
<el-button v-if="displayDiagram==false" @click="showDiagram()">流程图</el-button>
{{addForm.tagNames?'':''}}
<el-button @click.native="tagSelectVisible=true" :loading="addLoading" icon="el-icon-plus">标签</el-button>
<el-button v-if="displayDiagram==false" @click="showDiagram()" icon="el-icon-view">流程图</el-button>
</el-form-item> </el-form-item>
<el-col :span="12">
<el-form-item label="监控" prop="monitors">
<el-col :span="12">
<el-form-item label="流程监控" prop="monitors">
<el-col :span="16"> <el-col :span="16">
<el-select style="width:100%" v-model="monitors" multiple clearable filterable placeholder="请选择">
<el-select style="width:100%" v-model="monitors" multiple clearable filterable placeholder="请选择人员">
<el-option <el-option
v-for="item in baseUserList" v-for="item in baseUserList"
:key="item.userid" :key="item.userid"
@ -35,15 +35,15 @@
</el-select> </el-select>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-button @click.native="monitorsSelectVisible=true" :loading="addLoading">更多人员</el-button>
<el-button @click.native="monitorsSelectVisible=true" :loading="addLoading" icon="el-icon-more"></el-button>
</el-col> </el-col>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="主办" prop="sponsors">
<el-form-item label="流程主办" prop="sponsors">
<el-col :span="16"> <el-col :span="16">
<el-select style="width:100%" v-model="sponsors" multiple clearable filterable placeholder="请选择">
<el-select style="width:100%" v-model="sponsors" multiple clearable filterable placeholder="请选择人员">
<el-option <el-option
v-for="item in baseUserList" v-for="item in baseUserList"
:key="item.userid" :key="item.userid"
@ -55,16 +55,16 @@
</el-select> </el-select>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-button @click.native="sponsorsSelectVisible=true" :loading="addLoading">更多人员</el-button>
</el-col>
</el-form-item>
</el-col>
<el-form-item label="流程归档分类" prop="categoryId">
<el-col :span="14"> <category-tree show-checkbox :current-key="addForm.categoryId" v-on:check-change="handleCategoryCheckChange" ></category-tree>
</el-col>
</el-form-item>
<el-form-item label="关联智能表单" prop="isRefForm">
<el-col :span="10">
<el-button @click.native="sponsorsSelectVisible=true" :loading="addLoading" icon="el-icon-more"></el-button>
</el-col>
</el-form-item>
</el-col>
<el-form-item label="归档分类" prop="categoryId">
<el-col :span="14"> <category-tree show-checkbox :current-key="addForm.categoryId" v-on:check-change="handleCategoryCheckChange" ></category-tree>
</el-col>
</el-form-item>
<el-form-item label="关联表单" prop="isRefForm">
<el-col :span="10">
<el-select style="width:100%" v-model="addForm.formId" clearable filterable placeholder="请选择"> <el-select style="width:100%" v-model="addForm.formId" clearable filterable placeholder="请选择">
<el-option <el-option
v-for="item in formDefs" v-for="item in formDefs"
@ -74,13 +74,13 @@
</el-option> </el-option>
</el-select> </el-select>
</el-col> </el-col>
<el-col :span="10" style="padding-left:5px;">
<el-col :span="10" style="padding-left:22px;">
<el-radio v-model="addForm.formShowType" label="form">表单形式展现</el-radio> <el-radio v-model="addForm.formShowType" label="form">表单形式展现</el-radio>
<el-radio v-model="addForm.formShowType" label="table">表格形式展现</el-radio> <el-radio v-model="addForm.formShowType" label="table">表格形式展现</el-radio>
</el-col> </el-col>
</el-form-item>
<form-data-mng-for-flow-form v-if="addForm.isRefForm=='1' && addForm.formId!=null && addForm.formId!=''" :formShowType="addForm.formShowType" :companyDepts="companyDepts" :companyEmployees="companyEmployees" :formId="addForm.formId" @formFieldsLoad="onFormFieldsLoad"><div></div></form-data-mng-for-flow-form>
<el-form-item label="审批人设置" prop="assignees">
</el-form-item>
<form-data-mng-for-flow-form v-if="addForm.isRefForm=='1' && addForm.formId!=null && addForm.formId!=''" :formShowType="addForm.formShowType" :companyDepts="companyDepts" :companyEmployees="companyEmployees" :formId="addForm.formId" @formFieldsLoad="onFormFieldsLoad"><div></div></form-data-mng-for-flow-form>
<el-form-item label="审批人设置" prop="assignees">
<el-table <el-table
:data="nodeInfosSelectOptions" :data="nodeInfosSelectOptions"
border border
@ -97,10 +97,10 @@
label="已配置人员" label="已配置人员"
min-width="250"> min-width="250">
<template slot-scope="scope"> <template slot-scope="scope">
{{showAssigneeTips(scope.row)}}
<el-button round v-if="scope.row.candidate=='1'" type="warning" @click.native="showCandidateSelectDialog(scope.row,'')" :loading="addLoading">选候选人</el-button>
<el-button round v-if="scope.row.candidate!='1' " type="success" @click.native="showUserSelectDialog(scope.row,'')" :loading="addLoading">选人员</el-button>
<el-button round v-if="scope.row.toCreater!='1'" type="primary" @click.native="setAssigneeAsStartUser(scope.row)">转发起人</el-button>
{{showAssigneeTips(scope.row)}}
<el-button round v-if="scope.row.candidate=='1'" size="mini" @click.native="showCandidateSelectDialog(scope.row,'')" :loading="addLoading">选候选人</el-button>
<el-button round v-if="scope.row.candidate!='1' " size="mini" @click.native="showUserSelectDialog(scope.row,'')" :loading="addLoading">选人员</el-button>
<el-button round v-if="scope.row.toCreater!='1'" size="mini" @click.native="setAssigneeAsStartUser(scope.row)">转发起人</el-button>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
@ -108,64 +108,64 @@
prop="showNextAssignees" prop="showNextAssignees"
label="手选执行人" label="手选执行人"
width="150"> width="150">
<template slot-scope="scope"> <template slot-scope="scope">
<el-checkbox v-model="scope.row.showNextAssignees" label="可手选" true-label="1" false-label="0" border></el-checkbox>
<el-checkbox v-model="scope.row.showNextAssignees" label="可手选" true-label="1" false-label="0" border></el-checkbox>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="candidate" prop="candidate"
label="候选任务" label="候选任务"
width="120">
width="120">
<template slot-scope="scope"> <template slot-scope="scope">
<el-checkbox v-model="scope.row.candidate" label="候选" true-label="1" false-label="0" border></el-checkbox>
<el-checkbox v-model="scope.row.candidate" label="候选" true-label="1" false-label="0" border></el-checkbox>
</template> </template>
</el-table-column>
</el-table-column>
<el-table-column <el-table-column
prop="qxCode"
prop="qxCode"
label="权限配置" label="权限配置"
min-width="100"> min-width="100">
<template slot-scope="scope">
<el-button type="plain" @click.native="showQxDialog(scope.row)" >配置权限</el-button>
<template slot-scope="scope">
<el-button type="plain" @click.native="showQxDialog(scope.row)" >配置权限</el-button>
</template> </template>
</el-table-column>
</el-table-column>
<el-table-column <el-table-column
prop="formId"
prop="formId"
label="表单配置" label="表单配置"
min-width="100"> min-width="100">
<template slot-scope="scope">
<el-button type="plain" @click.native="showNodeForm(scope.row)" >配置表单</el-button>
<template slot-scope="scope">
<el-button type="plain" @click.native="showNodeForm(scope.row)" >配置表单</el-button>
</template> </template>
</el-table-column>
</el-table>
</el-table-column>
</el-table>
</el-form-item> </el-form-item>
<el-form-item label="流程正文" prop="mainContext"> <el-form-item label="流程正文" prop="mainContext">
<vue-editor :branch-id="userInfo.branchId" v-model="addForm.mainContext"></vue-editor>
<vue-editor :branch-id="userInfo.branchId" v-model="addForm.mainContext"></vue-editor>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<attachment-upload :branch-id="userInfo.branchId" :deptid="userInfo.deptid" :archive-id="procdef.id" :category-id="addForm.categoryId"></attachment-upload> <attachment-upload :branch-id="userInfo.branchId" :deptid="userInfo.deptid" :archive-id="procdef.id" :category-id="addForm.categoryId"></attachment-upload>
</el-form-item> </el-form-item>
<el-form-item label="流程权限" prop="mainQx"> <el-form-item label="流程权限" prop="mainQx">
<el-button @click="showMainQxDialog">点击查看/设置流程权限</el-button> <el-button @click="showMainQxDialog">点击查看/设置流程权限</el-button>
</el-form-item> </el-form-item>
<el-form-item>
<el-button @click.native="handleCancel">取消</el-button>
<el-button type="primary" @click.native="templateVisible=true" :loading="addLoading">导入模板</el-button>
<el-button type="primary" @click.native="saveAsTemplate" :loading="addLoading">存为模板</el-button>
<el-button type="primary" @click.native="addOrEditSubmit" :loading="addLoading">提交</el-button>
</el-form-item>
<el-form-item>
<el-button type="primary" @click.native="addOrEditSubmit" :loading="addLoading">提交</el-button>
<el-button @click.native="handleCancel">取消</el-button>
<el-button @click.native="templateVisible=true" :loading="addLoading">导入模板</el-button>
<el-button @click.native="saveAsTemplate" :loading="addLoading">存为模板</el-button>
</el-form-item>
</el-form> </el-form>
</el-col>
<el-dialog
</el-col>
<el-dialog
title="流程图" title="流程图"
:visible.sync="displayDiagram" :visible.sync="displayDiagram"
width="80%" append-to-body >
<el-image :fit="'contain'" :src="diagramUrl">
width="80%" append-to-body >
<el-image :fit="'contain'" :src="diagramUrl">
<div slot="error" class="image-slot"> <div slot="error" class="image-slot">
<i class="el-icon-picture-outline"></i> <i class="el-icon-picture-outline"></i>
</div> </div>
@ -173,64 +173,64 @@
正在全力加载中<i class="el-icon-loading"></i> 正在全力加载中<i class="el-icon-loading"></i>
</div> </div>
</el-image> </el-image>
<span slot="footer" class="dialog-footer">
<span slot="footer" class="dialog-footer">
<el-button type="primary" @click="displayDiagram = false">关闭</el-button> <el-button type="primary" @click="displayDiagram = false">关闭</el-button>
</span> </span>
</el-dialog>
</el-dialog>
<el-dialog append-to-body <el-dialog append-to-body
title="模板导入" title="模板导入"
:visible.sync="templateVisible" :visible.sync="templateVisible"
width="60%">
<procdef-parames-template-mng :visible="templateVisible" :modelKey="procdef.key" :procDefId="procdef.id" @cancel="templateVisible=false" @confirm="onTemplateSelected"></procdef-parames-template-mng>
width="60%">
<procdef-parames-template-mng :visible="templateVisible" :modelKey="procdef.key" :procDefId="procdef.id" @cancel="templateVisible=false" @confirm="onTemplateSelected"></procdef-parames-template-mng>
</el-dialog> </el-dialog>
<el-dialog append-to-body <el-dialog append-to-body
title="配置流程总体权限" title="配置流程总体权限"
:visible.sync="mainQxVisible" :visible.sync="mainQxVisible"
width="60%">
<act-qx-code-set :qxType="'mainQx'" :formFields="formFields" :visible="mainQxVisible" :qxCode="addForm.mainQx" @cancel="onMainQxCancel" @confirm="onMainQxSelected"></act-qx-code-set>
width="60%">
<act-qx-code-set :qxType="'mainQx'" :formFields="formFields" :visible="mainQxVisible" :qxCode="addForm.mainQx" @cancel="onMainQxCancel" @confirm="onMainQxSelected"></act-qx-code-set>
</el-dialog> </el-dialog>
<el-dialog append-to-body <el-dialog append-to-body
title="配置流程节点权限" title="配置流程节点权限"
:visible.sync="qxVisible" :visible.sync="qxVisible"
width="60%">
<act-qx-code-set :formFields="formFields" :visible="qxVisible" :qxCode="actSelected ? actSelected.qxCode:''" @cancel="onQxCancel" @confirm="onQxSelected"></act-qx-code-set>
width="60%">
<act-qx-code-set :formFields="formFields" :visible="qxVisible" :qxCode="actSelected ? actSelected.qxCode:''" @cancel="onQxCancel" @confirm="onQxSelected"></act-qx-code-set>
</el-dialog> </el-dialog>
<el-dialog append-to-body <el-dialog append-to-body
title="选择监控人" title="选择监控人"
:visible.sync="monitorsSelectVisible" :visible.sync="monitorsSelectVisible"
width="60%">
<users-select :select-userids="monitors.map(i=>i.userid)" @confirm="onMonitorsSelected"></users-select>
width="60%">
<users-select :select-userids="monitors.map(i=>i.userid)" @confirm="onMonitorsSelected"></users-select>
</el-dialog> </el-dialog>
<el-dialog append-to-body <el-dialog append-to-body
title="设置标签" title="设置标签"
:visible.sync="tagSelectVisible" :visible.sync="tagSelectVisible"
width="60%">
<tag-mng :tagIds="addForm.tagIds==null?null:addForm.tagIds.split(',')" :jump="true" @select-confirm="onTagSelected"></tag-mng>
width="60%">
<tag-mng :tagIds="addForm.tagIds==null?null:addForm.tagIds.split(',')" :jump="true" @select-confirm="onTagSelected"></tag-mng>
</el-dialog> </el-dialog>
<el-dialog append-to-body <el-dialog append-to-body
title="选择候选人/候选部门/候选岗位" title="选择候选人/候选部门/候选岗位"
:visible.sync="candidateSelectVisible" :visible.sync="candidateSelectVisible"
width="60%">
<act-candidate-set :actAssignee="actSelected" @confirm="onCandidateSelected"></act-candidate-set>
width="60%">
<act-candidate-set :actAssignee="actSelected" @confirm="onCandidateSelected"></act-candidate-set>
</el-dialog> </el-dialog>
<el-dialog append-to-body <el-dialog append-to-body
title="选择主办员工" title="选择主办员工"
:visible.sync="sponsorsSelectVisible" :visible.sync="sponsorsSelectVisible"
width="60%">
<users-select :select-userids="sponsors.map(i=>i.userid)" @confirm="onSponsorsSelected"></users-select>
width="60%">
<users-select :select-userids="sponsors.map(i=>i.userid)" @confirm="onSponsorsSelected"></users-select>
</el-dialog> </el-dialog>
<el-dialog append-to-body <el-dialog append-to-body
title="选择审批员工" title="选择审批员工"
:visible.sync="userSelectVisible" :visible.sync="userSelectVisible"
width="60%">
<users-select :select-userids=" (actSelected && actSelected.nodeUsers)?actSelected.nodeUsers:[]" @confirm="onUserSelected"></users-select>
width="60%">
<users-select :select-userids=" (actSelected && actSelected.nodeUsers)?actSelected.nodeUsers:[]" @confirm="onUserSelected"></users-select>
</el-dialog> </el-dialog>
<el-dialog append-to-body <el-dialog append-to-body
title="配置表单" title="配置表单"
:visible.sync="nodeFormVisible" :visible.sync="nodeFormVisible"
width="80%">
<form-def-for-flow-node :visible="nodeFormVisible" :form-id=" (actSelected && actSelected.formId)?actSelected.formId:''" @cancel="onNodeFormCancel" :form-fields-json="actSelected?actSelected.formFieldsJson:null" @submit="onFormDefForFlowNodeSubmit"></form-def-for-flow-node>
width="80%">
<form-def-for-flow-node :visible="nodeFormVisible" :form-id=" (actSelected && actSelected.formId)?actSelected.formId:''" @cancel="onNodeFormCancel" :form-fields-json="actSelected?actSelected.formFieldsJson:null" @submit="onFormDefForFlowNodeSubmit"></form-def-for-flow-node>
</el-dialog> </el-dialog>
</el-row> </el-row>
</section> </section>
@ -238,7 +238,7 @@
<script> <script>
import util from '@/common/js/util';// import util from '@/common/js/util';//
import config from '@/common/config';//import
import config from '@/common/config';//import
//import { getCompanyEmployees,getCompanyDepts, selectCacheOptions,getDefaultValue,getCodeName } from '@/api/common/code';// //import { getCompanyEmployees,getCompanyDepts, selectCacheOptions,getDefaultValue,getCodeName } from '@/api/common/code';//
import { editProcdefParames,listProcdefParames, addProcdefParames } from '@/api/mdp/workflow/re/procdefParames'; import { editProcdefParames,listProcdefParames, addProcdefParames } from '@/api/mdp/workflow/re/procdefParames';
import { listProcdefParamesTemplate, addOrUpdateTemplate } from '@/api/mdp/workflow/re/procdefParamesTemplate'; import { listProcdefParamesTemplate, addOrUpdateTemplate } from '@/api/mdp/workflow/re/procdefParamesTemplate';
@ -249,18 +249,18 @@
import { listUser,listUserNames } from '@/api/mdp/sys/user'; import { listUser,listUserNames } from '@/api/mdp/sys/user';
import { listDept } from '@/api/mdp/sys/dept'; import { listDept } from '@/api/mdp/sys/dept';
import Sticky from '@/components/Sticky' // header import Sticky from '@/components/Sticky' // header
import { mapGetters } from 'vuex'
import AttachmentUpload from '@/views/mdp/arc/archiveAttachment/AttachmentUpload';
import { mapGetters } from 'vuex'
import AttachmentUpload from '@/views/mdp/arc/archiveAttachment/AttachmentUpload';
import VueEditor from '@/components/VueEditor/Index'; import VueEditor from '@/components/VueEditor/Index';
import UsersSelect from '@/views/mdp/sys/user/UsersSelect';
import FormDefForFlowNode from '@/views/mdp/form/formDef/FormDefForFlowNode';
import ProcdefParamesTemplateMng from '@/views/mdp/workflow/re/ProcdefParamesTemplate/ProcdefParamesTemplateMng';
import TagMng from '@/views/mdp/arc/tag/TagMng';
import ActCandidateSet from '@/views/mdp/workflow/re/procdefParames/ActCandidateSet';
import ActQxCodeSet from '@/views/mdp/workflow/re/procdefParames/ActQxCodeSet';
import UsersSelect from '@/views/mdp/sys/user/UsersSelect';
import FormDefForFlowNode from '@/views/mdp/form/formDef/FormDefForFlowNode';
import ProcdefParamesTemplateMng from '@/views/mdp/workflow/re/ProcdefParamesTemplate/ProcdefParamesTemplateMng';
import TagMng from '@/views/mdp/arc/tag/TagMng';
import ActCandidateSet from '@/views/mdp/workflow/re/procdefParames/ActCandidateSet';
import ActQxCodeSet from '@/views/mdp/workflow/re/procdefParames/ActQxCodeSet';
export default { export default {
name:'ProcdefParamesSet', name:'ProcdefParamesSet',
@ -279,7 +279,7 @@
this.addForm.isRefForm="0" this.addForm.isRefForm="0"
}else{ }else{
this.addForm.isRefForm="1" this.addForm.isRefForm="1"
}
}
}, },
'procdef':function( procdef ) { 'procdef':function( procdef ) {
this.addForm.procDefId=procdef.id; this.addForm.procDefId=procdef.id;
@ -293,15 +293,15 @@
this.sponsors=[]; this.sponsors=[];
this.$nextTick(() => { this.$nextTick(() => {
this.getProcdefParamess(); this.getProcdefParamess();
this.listBpmnActAssignees();
this.listBpmnActAssignees();
}); });
},
'visible':function(visible) {
if(visible==true){
},
'visible':function(visible) {
if(visible==true){
} }
}
},
}
},
data() { data() {
return { return {
options:{},// options:{},//
@ -328,9 +328,9 @@
formDefs:[], formDefs:[],
diagramUrl:'', diagramUrl:'',
nodeInfos:[],//id:'',actId:'',actName:'',procDefId:'',assignees:'',isMultiple:'' , nodeInfos:[],//id:'',actId:'',actName:'',procDefId:'',assignees:'',isMultiple:'' ,
nodeInfosSelectOptions:[],//id:'',actId:'',actName:'',procDefId:'',assignees:[],isMultiple:''
candidateSelectVisible:false,
userSelectVisible:false,
nodeInfosSelectOptions:[],//id:'',actId:'',actName:'',procDefId:'',assignees:[],isMultiple:''
candidateSelectVisible:false,
userSelectVisible:false,
actSelected:null,//nodeInfos actSelected:null,//nodeInfos
sponsorsSelectVisible:false, sponsorsSelectVisible:false,
monitorsSelectVisible:false, monitorsSelectVisible:false,
@ -354,8 +354,8 @@
this.$refs.addForm.validate((valid) => { this.$refs.addForm.validate((valid) => {
if (valid) { if (valid) {
this.$confirm('确认提交吗?', '提示', {}).then(() => { this.$confirm('确认提交吗?', '提示', {}).then(() => {
this.addLoading = true;
let params = Object.assign({}, this.addForm);
this.addLoading = true;
let params = Object.assign({}, this.addForm);
params.sponsors=this.sponsors.map(i=>i.userid).join(','); params.sponsors=this.sponsors.map(i=>i.userid).join(',');
params.monitors=this.monitors.map(i=>i.userid).join(','); params.monitors=this.monitors.map(i=>i.userid).join(',');
if(params.branchId==null || params.branchId==''){ if(params.branchId==null || params.branchId==''){
@ -368,17 +368,17 @@
} }
var nodeInfosNew=new Array(); var nodeInfosNew=new Array();
this.nodeInfosSelectOptions.forEach(i=>{ this.nodeInfosSelectOptions.forEach(i=>{
let act=Object.assign({},i)
let act=Object.assign({},i)
if(act.showNextAssignees==null || act.showNextAssignees==''||!act.showNextAssignees){ if(act.showNextAssignees==null || act.showNextAssignees==''||!act.showNextAssignees){
act.showNextAssignees="0" act.showNextAssignees="0"
} }
if(act.candidate==null || act.candidate==''||!act.candidate){ if(act.candidate==null || act.candidate==''||!act.candidate){
act.candidate="0" act.candidate="0"
}
}
if(act.isMultiple==null || act.isMultiple==''||!act.isMultiple){ if(act.isMultiple==null || act.isMultiple==''||!act.isMultiple){
act.isMultiple="0" act.isMultiple="0"
} }
if(act.instanceCount==null || act.instanceCount==''||!act.instanceCount){ if(act.instanceCount==null || act.instanceCount==''||!act.instanceCount){
act.instanceCount="0" act.instanceCount="0"
} }
@ -389,20 +389,20 @@
params.modelKey=this.procdef.key params.modelKey=this.procdef.key
addOrUpdateTemplate(params).then(res=>{ addOrUpdateTemplate(params).then(res=>{
var tips=res.data.tips; var tips=res.data.tips;
this.addLoading = false;
this.$message({ message: tips.msg, type: tips.isOk?'success':'error' });
this.addLoading = false;
this.$message({ message: tips.msg, type: tips.isOk?'success':'error' });
}).catch(e=>this.addLoading=false); }).catch(e=>this.addLoading=false);
return; return;
} }
if(params.id==''){ if(params.id==''){
addProcdefParames({procdefParames:params,nodeInfos:nodeInfosNew}).then((res) => { addProcdefParames({procdefParames:params,nodeInfos:nodeInfosNew}).then((res) => {
this.addLoading = false;
this.addLoading = false;
var tips=res.data.tips; var tips=res.data.tips;
if(tips.isOk){ if(tips.isOk){
this.$refs['addForm'].resetFields(); this.$refs['addForm'].resetFields();
this.$emit('submit');// @submit="afterAddSubmit" this.$emit('submit');// @submit="afterAddSubmit"
} }
this.$message({ message: tips.msg, type: tips.isOk?'success':'error' });
this.$message({ message: tips.msg, type: tips.isOk?'success':'error' });
}).catch(() => { }).catch(() => {
this.addLoading = false; this.addLoading = false;
}); });
@ -414,20 +414,20 @@
changeTags="0" changeTags="0"
}else{// }else{//
changeTags="1" changeTags="1"
}
}
editProcdefParames({changeTags:changeTags,procdefParames:params,nodeInfos:nodeInfosNew}).then((res) => { editProcdefParames({changeTags:changeTags,procdefParames:params,nodeInfos:nodeInfosNew}).then((res) => {
this.addLoading = false;
this.addLoading = false;
var tips=res.data.tips; var tips=res.data.tips;
if(tips.isOk){ if(tips.isOk){
this.$refs['addForm'].resetFields(); this.$refs['addForm'].resetFields();
this.$emit('submit');// @submit="afterAddSubmit" this.$emit('submit');// @submit="afterAddSubmit"
} }
this.$message({ message: tips.msg, type: tips.isOk?'success':'error' });
this.$message({ message: tips.msg, type: tips.isOk?'success':'error' });
}).catch(() => { }).catch(() => {
this.addLoading = false; this.addLoading = false;
}); });
} }
}); });
} }
}); });
@ -438,33 +438,33 @@
let params = { let params = {
procDefId: this.procdef.id procDefId: this.procdef.id
}; };
this.listLoading = true; this.listLoading = true;
listProcdefParames(params).then((res) => { listProcdefParames(params).then((res) => {
var tips=res.data.tips; var tips=res.data.tips;
if(tips.isOk){
if(tips.isOk){
if(res.data.data.length>0){ if(res.data.data.length>0){
console.log(res.data); console.log(res.data);
this.addForm=res.data.data[0];
this.addForm=res.data.data[0];
this.sponsors=this.addForm.sponsors==null?[]:this.addForm.sponsors.split(',').map(i=>{return {userid:i,username:i}}); this.sponsors=this.addForm.sponsors==null?[]:this.addForm.sponsors.split(',').map(i=>{return {userid:i,username:i}});
this.monitors=this.addForm.monitors==null?[]:this.addForm.monitors.split(',').map(i=>{return {userid:i,username:i}}); this.monitors=this.addForm.monitors==null?[]:this.addForm.monitors.split(',').map(i=>{return {userid:i,username:i}});
} }
console.log("xxxxxxxxxxxxxxxxxxxxxxxxxxx"); console.log("xxxxxxxxxxxxxxxxxxxxxxxxxxx");
console.log(this.nodeInfosSelectOptions); console.log(this.nodeInfosSelectOptions);
}else{ }else{
this.$message({ message: tips.msg, type: 'error' }); this.$message({ message: tips.msg, type: 'error' });
}
}
this.listLoading = false; this.listLoading = false;
}).catch(() => { }).catch(() => {
this.listLoading = false; this.listLoading = false;
}); });
},
},
onCandidateSelected:function(actAssignee){ onCandidateSelected:function(actAssignee){
this.candidateSelectVisible=false; this.candidateSelectVisible=false;
console.log("actAssignee-----------"+JSON.stringify(actAssignee)); console.log("actAssignee-----------"+JSON.stringify(actAssignee));
this.actSelected.nodeUsers=actAssignee.nodeUsers; this.actSelected.nodeUsers=actAssignee.nodeUsers;
this.actSelected.groupIds=actAssignee.groupIds this.actSelected.groupIds=actAssignee.groupIds
this.actSelected.toCreater='0' this.actSelected.toCreater='0'
@ -478,18 +478,18 @@
this.baseUserList.push(i); this.baseUserList.push(i);
} }
}) })
this.actSelected.nodeUsers=users
this.actSelected.nodeUsers=users
this.actSelected.toCreater='0' this.actSelected.toCreater='0'
},
},
onTagSelected:function(tags){ onTagSelected:function(tags){
this.tagSelectVisible=false; this.tagSelectVisible=false;
console.log("tags"+JSON.stringify(tags)); console.log("tags"+JSON.stringify(tags));
this.addForm.tagIds=tags.map(t=>t.tagId).join(",");
this.addForm.tagNames=tags.map(t=>t.tagName).join(",");
this.addForm.tagIds=tags.map(t=>t.tagId).join(",");
this.addForm.tagNames=tags.map(t=>t.tagName).join(",");
},
},
onMonitorsSelected:function(users){ onMonitorsSelected:function(users){
this.monitorsSelectVisible=false; this.monitorsSelectVisible=false;
console.log("posts-----------"+JSON.stringify(users)); console.log("posts-----------"+JSON.stringify(users));
@ -501,7 +501,7 @@
this.monitors=users; this.monitors=users;
}, },
onSponsorsSelected:function(users){ onSponsorsSelected:function(users){
this.sponsorsSelectVisible=false; this.sponsorsSelectVisible=false;
users.forEach(i=>{ users.forEach(i=>{
@ -509,7 +509,7 @@
this.baseUserList.push(i); this.baseUserList.push(i);
} }
}) })
console.log("posts-----------"+JSON.stringify(users));
console.log("posts-----------"+JSON.stringify(users));
this.sponsors=users; this.sponsors=users;
}, },
showMonitorsSelectDialog(){ showMonitorsSelectDialog(){
@ -517,8 +517,8 @@
}, },
showSponsorsSelectDialog(){ showSponsorsSelectDialog(){
},
},
showUserSelectDialog:function(actSelected,index){ showUserSelectDialog:function(actSelected,index){
console.log(actSelected); console.log(actSelected);
this.userSelectVisible=true; this.userSelectVisible=true;
@ -537,7 +537,7 @@
if(actAssignee.nodeUsers){ if(actAssignee.nodeUsers){
var userCount=actAssignee.nodeUsers.length; var userCount=actAssignee.nodeUsers.length;
tips.push(userCount+"个候选用户"); tips.push(userCount+"个候选用户");
}
}
if(actAssignee.groupIds){ if(actAssignee.groupIds){
var groupCount=actAssignee.groupIds.split(",").length; var groupCount=actAssignee.groupIds.split(",").length;
tips.push(groupCount+"个候选部门/岗位"); tips.push(groupCount+"个候选部门/岗位");
@ -545,14 +545,14 @@
if(tips.length==0){ if(tips.length==0){
tips.push("未配置任何候选人/候选部门/候选岗位"); tips.push("未配置任何候选人/候选部门/候选岗位");
} }
}else{ }else{
if(actAssignee.nodeUsers){ if(actAssignee.nodeUsers){
tips=tips.concat(actAssignee.nodeUsers.map(i=>i.username));
tips=tips.concat(actAssignee.nodeUsers.map(i=>i.username));
}else{ }else{
tips.push("未配置任何任务执行人"); tips.push("未配置任何任务执行人");
}
}
} }
return tips.join(","); return tips.join(",");
}, },
@ -566,11 +566,11 @@
this.listLoading = true; this.listLoading = true;
listFormDef(params).then((res) => { listFormDef(params).then((res) => {
var tips=res.data.tips; var tips=res.data.tips;
if(tips.isOk){
if(tips.isOk){
this.formDefs = res.data.data; this.formDefs = res.data.data;
}else{ }else{
this.$message({ message: tips.msg, type: 'error' }); this.$message({ message: tips.msg, type: 'error' });
}
}
this.listLoading = false; this.listLoading = false;
}).catch(() => { }).catch(() => {
this.listLoading = false; this.listLoading = false;
@ -578,7 +578,7 @@
}); });
}, },
handleCategoryCheckChange(data, checked, indeterminate){ handleCategoryCheckChange(data, checked, indeterminate){
console.log("555555555555555555555555555555555555555555");
console.log("555555555555555555555555555555555555555555");
this.addForm.categoryId=checked?data.id:''; this.addForm.categoryId=checked?data.id:'';
console.log(this.addForm.categoryId); console.log(this.addForm.categoryId);
}, },
@ -595,14 +595,14 @@
if(tips.isOk){ if(tips.isOk){
//this.nodeInfos=res.data.data //this.nodeInfos=res.data.data
this.nodeInfos=res.data.data; this.nodeInfos=res.data.data;
this.nodeInfosSelectOptions=this.nodeInfos;
this.nodeInfosSelectOptions=this.nodeInfos;
}else{ }else{
this.$message({ message: tips.msg, type: 'error' }); this.$message({ message: tips.msg, type: 'error' });
} }
}); });
}, },
/**end 在上面加自定义方法**/ /**end 在上面加自定义方法**/
initBaseUserList(){ initBaseUserList(){
var that=this; var that=this;
var sponsors=that.addForm.sponsors.split(',').map(i=>{return {userid:i,username:i}}); var sponsors=that.addForm.sponsors.split(',').map(i=>{return {userid:i,username:i}});
@ -611,7 +611,7 @@
var currentUser={userid:this.userInfo.userid,username:this.userInfo.username} var currentUser={userid:this.userInfo.userid,username:this.userInfo.username}
that.baseUserList=sponsors.concat(monitors.filter(m=>!sponsors.some(s=>s.userid==m.userid))) that.baseUserList=sponsors.concat(monitors.filter(m=>!sponsors.some(s=>s.userid==m.userid)))
that.sponsors=sponsors; that.sponsors=sponsors;
that.monitors=monitors;
that.monitors=monitors;
if(!that.baseUserList.some(i=>i.userid==currentUser.userid)){ if(!that.baseUserList.some(i=>i.userid==currentUser.userid)){
that.baseUserList.push(currentUser); that.baseUserList.push(currentUser);
} }
@ -620,7 +620,7 @@
} }
listUserNames({userids:that.baseUserList.map(i=>i.userid),branchId:that.userInfo.branchId}).then(res=>{ listUserNames({userids:that.baseUserList.map(i=>i.userid),branchId:that.userInfo.branchId}).then(res=>{
if(res.data.tips.isOk){ if(res.data.tips.isOk){
that.baseUserList=res.data.data
that.baseUserList=res.data.data
that.baseUserList.forEach(u=>{ that.baseUserList.forEach(u=>{
that.monitors.forEach((m,index)=>{ that.monitors.forEach((m,index)=>{
if(m.userid==u.userid){ if(m.userid==u.userid){
@ -634,32 +634,32 @@
}); });
}) })
} }
}); });
}, },
onQxSelected:function(qxCode){ onQxSelected:function(qxCode){
this.qxVisible=false; this.qxVisible=false;
this.actSelected.qxCode=qxCode; this.actSelected.qxCode=qxCode;
}, },
onQxCancel:function(){ onQxCancel:function(){
this.qxVisible=false;
this.qxVisible=false;
}, },
showQxDialog:function(act){ showQxDialog:function(act){
this.qxVisible=true; this.qxVisible=true;
this.actSelected=act; this.actSelected=act;
}, },
onMainQxSelected:function(qxCode){ onMainQxSelected:function(qxCode){
this.mainQxVisible=false; this.mainQxVisible=false;
this.addForm.mainQx=qxCode; this.addForm.mainQx=qxCode;
}, },
onMainQxCancel:function(){ onMainQxCancel:function(){
this.mainQxVisible=false;
this.mainQxVisible=false;
}, },
showMainQxDialog:function(){ showMainQxDialog:function(){
this.mainQxVisible=true;
this.mainQxVisible=true;
}, },
onFormFieldsLoad:function(formFields){ onFormFieldsLoad:function(formFields){
this.formFields=formFields; this.formFields=formFields;
@ -691,23 +691,23 @@
onNodeFormCancel:function(){ onNodeFormCancel:function(){
this.nodeFormVisible=false; this.nodeFormVisible=false;
}, },
showNodeForm:function(nodeInfo){
this.actSelected=nodeInfo
showNodeForm:function(nodeInfo){
this.actSelected=nodeInfo
this.nodeFormVisible=true this.nodeFormVisible=true
}, },
setAssigneeAsStartUser(nodeInfo){ setAssigneeAsStartUser(nodeInfo){
if(nodeInfo.allowOverUser=='0'){ if(nodeInfo.allowOverUser=='0'){
this.$message.error("该节点不允许改变执行人") this.$message.error("该节点不允许改变执行人")
return ; return ;
}
}
this.actSelected=nodeInfo this.actSelected=nodeInfo
this.actSelected.toCreater='1' this.actSelected.toCreater='1'
this.actSelected.candidate='0' this.actSelected.candidate='0'
this.actSelected.showNextAssignees='0' this.actSelected.showNextAssignees='0'
} }
},//end method },//end method
components: {
components: {
// 'procdef-parames-edit':ProcdefParamesEdit // 'procdef-parames-edit':ProcdefParamesEdit
'form-data-mng-for-flow-form':FormDataMngForFlowForm, 'form-data-mng-for-flow-form':FormDataMngForFlowForm,
'vue-editor':VueEditor, 'vue-editor':VueEditor,
@ -715,7 +715,7 @@
'sticky': Sticky, 'sticky': Sticky,
AttachmentUpload,UsersSelect,ActCandidateSet,TagMng,ActQxCodeSet,ProcdefParamesTemplateMng,FormDefForFlowNode AttachmentUpload,UsersSelect,ActCandidateSet,TagMng,ActQxCodeSet,ProcdefParamesTemplateMng,FormDefForFlowNode
}, },
mounted() {
mounted() {
this.addForm=Object.assign(this.addForm, this.procdefParames); this.addForm=Object.assign(this.addForm, this.procdefParames);
this.addForm.procDefId=this.procdef.id; this.addForm.procDefId=this.procdef.id;
this.addForm.mainTitle=this.procdef.name; this.addForm.mainTitle=this.procdef.name;
@ -723,21 +723,21 @@
this.listBpmnActAssignees(); this.listBpmnActAssignees();
this.getFormDefs(); this.getFormDefs();
this.initBaseUserList(); this.initBaseUserList();
// //
/** /**
let optionsParams={code:'all',fieldNames:['sex']}; let optionsParams={code:'all',fieldNames:['sex']};
selectCacheOptions(optionsParams).then(res=>{ selectCacheOptions(optionsParams).then(res=>{
this.options=res.data.data; this.options=res.data.data;
});
});
**/ **/
// //
//this.addForm.xxx=getDefaultValue(this.options.xxx,'1'); //this.addForm.xxx=getDefaultValue(this.options.xxx,'1');
/**在下面写其它函数***/ /**在下面写其它函数***/
}//end mounted }//end mounted
} }
@ -747,4 +747,4 @@
.actConfig { .actConfig {
margin-bottom: 14px; margin-bottom: 14px;
} }
</style>
</style>

2481
src/views/mdp/workflow/ru/execution/ExecutionMng.vue
File diff suppressed because it is too large
View File

77
src/views/mdp/workflow/ru/procinstParames/ProcinstParamesExecutionSet.vue

@ -71,20 +71,27 @@
placeholder="选择计划完成日期" > placeholder="选择计划完成日期" >
</el-date-picker> </el-date-picker>
完成 <el-button @click.native="updateFlowPlanFinishTime" :loading="addLoading" icon="el-icon-finished">保存日期</el-button> 完成 <el-button @click.native="updateFlowPlanFinishTime" :loading="addLoading" icon="el-icon-finished">保存日期</el-button>
主办人
<el-select disabled value-key="userid" v-model="sponsors" multiple placeholder="请选择">
<el-option
v-for="item in baseUserList"
:key="item.userid"
:label="item.username"
:value="item">
<span style="float: left">{{ item.username }}</span>
<span style="float: right; color: #8492a6; font-size: 14px">{{ item.shortName }}</span>
</el-option>
</el-select>
<font class=" hidden-md-and-down">
监控人
<el-popover
placement="top-start"
title="设置主办监控人"
width="400"
trigger="manual" v-model="sponsorsAndMonitorsVisible">
<el-row>
<el-col :span="24" style="padding-top:5px;">
<font class="more-label-font">主办人:</font>
<el-select disabled value-key="userid" v-model="sponsors" multiple placeholder="请选择">
<el-option
v-for="item in baseUserList"
:key="item.userid"
:label="item.username"
:value="item">
<span style="float: left">{{ item.username }}</span>
<span style="float: right; color: #8492a6; font-size: 14px">{{ item.shortName }}</span>
</el-option>
</el-select>
</el-col>
<el-col :span="24" style="padding-top:5px;">
<font class="more-label-font">监控人:</font>
<el-select disabled value-key="userid" v-model="monitors" multiple placeholder="请选择"> <el-select disabled value-key="userid" v-model="monitors" multiple placeholder="请选择">
<el-option <el-option
v-for="item in baseUserList" v-for="item in baseUserList"
@ -95,7 +102,10 @@
<span style="float: right; color: #8492a6; font-size: 13px">{{ item.shortName }}</span> <span style="float: right; color: #8492a6; font-size: 13px">{{ item.shortName }}</span>
</el-option> </el-option>
</el-select> </el-select>
</font>
</el-col>
</el-row>
<el-button slot="reference" icon="el-icon-s-check" @click="showSponsorsAndMonitors">主办人监控人查询</el-button>
</el-popover>
</el-row> </el-row>
<el-row v-if="addForm.isRefForm=='1' && addForm.formId && addForm.formShowType!='table'" style="padding-top:10px;"> <el-row v-if="addForm.isRefForm=='1' && addForm.formId && addForm.formShowType!='table'" style="padding-top:10px;">
<form-data-mng-for-flow-form :formShowType="addForm.formShowType" :companyDepts="companyDepts" :companyEmployees="companyEmployees" :formId="addForm.formId" :qxCode="qxCode" :procInstId="procInstId" :flowStartUserid="addForm.userid" :submitEvent="formDataSubmitEvent" @submit="startSubmit"><div></div></form-data-mng-for-flow-form> <form-data-mng-for-flow-form :formShowType="addForm.formShowType" :companyDepts="companyDepts" :companyEmployees="companyEmployees" :formId="addForm.formId" :qxCode="qxCode" :procInstId="procInstId" :flowStartUserid="addForm.userid" :submitEvent="formDataSubmitEvent" @submit="startSubmit"><div></div></form-data-mng-for-flow-form>
@ -369,9 +379,9 @@
this.task.rejectActivity.taskId='' this.task.rejectActivity.taskId=''
this.$nextTick(() => { this.$nextTick(() => {
this.getProcinstParamess(); this.getProcinstParamess();
this.listNodeInfos();
//this.listNodeInfos();
}); });
this.initBaseUserList();
//this.initBaseUserList();
} }
}, },
data() { data() {
@ -598,7 +608,7 @@
showMainContextOnly:false, showMainContextOnly:false,
nodeInfos:[], nodeInfos:[],
nodeInfoVisible:false, nodeInfoVisible:false,
sponsorsAndMonitorsVisible:false,
/**end 在上面加自定义属性**/ /**end 在上面加自定义属性**/
}//end return }//end return
},//end data },//end data
@ -827,7 +837,7 @@
this.diagramUrl=config.getBaseDomainUrl()+config.getWorkflowBasePath()+'/mdp/workflow/ru/diagram/'+this.procDefId+'/'+this.procInstId this.diagramUrl=config.getBaseDomainUrl()+config.getWorkflowBasePath()+'/mdp/workflow/ru/diagram/'+this.procDefId+'/'+this.procInstId
this.displayDiagram=true; this.displayDiagram=true;
}, },
initBaseUserList(){
initBaseUserList(sponsorsAndMonitorsVisible){
var that=this; var that=this;
var sponsors=that.addForm.sponsors?that.addForm.sponsors.split(',').map(i=>{return {userid:i,username:i}}):[]; var sponsors=that.addForm.sponsors?that.addForm.sponsors.split(',').map(i=>{return {userid:i,username:i}}):[];
var monitors=that.addForm.monitors?that.addForm.monitors.split(',').map(i=>{return {userid:i,username:i}}):[]; var monitors=that.addForm.monitors?that.addForm.monitors.split(',').map(i=>{return {userid:i,username:i}}):[];
@ -852,6 +862,7 @@
}); });
}) })
} }
this.sponsorsAndMonitorsVisible=sponsorsAndMonitorsVisible
}); });
}, },
handleUploadChange(){ handleUploadChange(){
@ -985,9 +996,14 @@
}); });
}, },
showNodeInfoDialog:function(){ showNodeInfoDialog:function(){
this.nodeInfoVisible=true;
if(this.nodeInfos && this.nodeInfos.length>0){
this.nodeInfoVisible=true;
}else{
this.listNodeInfos(true)
}
}, },
listNodeInfos(){
listNodeInfos(showNodeInfoDialog){
var params={procInstId:this.taskInfo.procInstId} var params={procInstId:this.taskInfo.procInstId}
getNodeInfos(params).then(res=>{ getNodeInfos(params).then(res=>{
if(res.data.tips.isOk){ if(res.data.tips.isOk){
@ -1006,6 +1022,9 @@
}else{ }else{
this.actAssignee=null; this.actAssignee=null;
} }
if(showNodeInfoDialog){
this.nodeInfoVisible=true;
}
} }
} }
}); });
@ -1050,6 +1069,13 @@
}) })
}, },
showSponsorsAndMonitors(){
if( (this.monitors==null || this.monitors.length==0 || this.sponsors==null||this.sponsors.length==0) && this.sponsorsAndMonitorsVisible==false ){
this.initBaseUserList(true)
}else{
this.sponsorsAndMonitorsVisible=!this.sponsorsAndMonitorsVisible;
}
}
/**end 在上面加自定义方法**/ /**end 在上面加自定义方法**/
},//end method },//end method
@ -1093,7 +1119,7 @@
this.qxCode= this.addForm.mainQx this.qxCode= this.addForm.mainQx
this.initBaseUserList();
//this.initBaseUserList();
console.log("mountedxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx") console.log("mountedxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx")
console.log(this.taskInfo) console.log(this.taskInfo)
if(this.taskInfo.assignee==null || this.taskInfo.assignee==''){ if(this.taskInfo.assignee==null || this.taskInfo.assignee==''){
@ -1108,7 +1134,7 @@
this.$nextTick(() => { this.$nextTick(() => {
this.getProcinstParamess(); this.getProcinstParamess();
}); });
this.listNodeInfos();
//this.listNodeInfos();
} }
/**在下面写其它函数***/ /**在下面写其它函数***/
@ -1141,4 +1167,9 @@
.wf-main-context p > img { .wf-main-context p > img {
max-width: 100%; max-width: 100%;
} }
.more-label-font{
text-align:center;
float:left;
padding-top:5px;
}
</style> </style>

117
src/views/mdp/workflow/ru/procinstParames/ProcinstParamesStartSet.vue

@ -1,6 +1,6 @@
<template> <template>
<section> <section>
<el-row>
<el-row class="app-container">
<!--新增界面 ProcinstParames 流程实例参数设置表--> <!--新增界面 ProcinstParames 流程实例参数设置表-->
<el-col :span="24"> <el-col :span="24">
@ -31,49 +31,53 @@
placeholder="选择计划完成日期" > placeholder="选择计划完成日期" >
</el-date-picker> </el-date-picker>
</el-col> <font style="margin-left:5px;"></font> </el-col> <font style="margin-left:5px;"></font>
</el-form-item>
<el-col :span="24">
<el-col :span="12">
<el-form-item label="发起部门" prop="deptid">
<el-select style="width:99%;" v-model="addForm.deptid" clearable filterable placeholder="请选择">
</el-form-item>
<el-form-item label="发起部门" prop="deptid">
<el-select v-model="addForm.deptid" clearable filterable placeholder="请选择">
<el-option
v-for="item in myDepts"
:key="item.deptid"
:label="item.deptName"
:value="item.deptid">
</el-option>
</el-select>
<el-popover
placement="top-start"
title="设置主办监控人"
width="400"
trigger="manual" v-model="sponsorsAndMonitorsVisible">
<el-row>
<el-col :span="24" style="padding-top:5px;">
<font class="more-label-font">主办人:</font>
<el-select disabled value-key="userid" v-model="sponsors" multiple placeholder="请选择">
<el-option <el-option
v-for="item in myDepts"
:key="item.deptid"
:label="item.deptName"
:value="item.deptid">
v-for="item in baseUserList"
:key="item.userid"
:label="item.username"
:value="item">
<span style="float: left">{{ item.username }}</span>
<span style="float: right; color: #8492a6; font-size: 14px">{{ item.shortName }}</span>
</el-option> </el-option>
</el-select>
</el-form-item>
</el-col>
</el-col>
<el-col :span="12">
<el-form-item label="主办人" prop="sponsors" >
<el-select value-key="userid" style="width:99%" v-model="sponsors" multiple placeholder="请选择">
<el-option
v-for="item in baseUserList"
:key="item.userid"
:label="item.username"
:value="item">
<span style="float: left">{{ item.username }}</span>
<span style="float: right; color: #8492a6; font-size: 13px">{{ item.shortName }}</span>
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="监控人" prop="monitors">
<el-select value-key="userid" style="width:99%" v-model="monitors" multiple placeholder="请选择">
</el-select>
</el-col>
<el-col :span="24" style="padding-top:5px;">
<font class="more-label-font">监控人:</font>
<el-select disabled value-key="userid" v-model="monitors" multiple placeholder="请选择">
<el-option <el-option
v-for="item in baseUserList"
:key="item.userid"
:label="item.username"
:value="item">
<span style="float: left">{{ item.username }}</span>
<span style="float: right; color: #8492a6; font-size: 13px">{{ item.shortName }}</span>
v-for="item in baseUserList"
:key="item.userid"
:label="item.username"
:value="item">
<span style="float: left">{{ item.username }}</span>
<span style="float: right; color: #8492a6; font-size: 13px">{{ item.shortName }}</span>
</el-option> </el-option>
</el-select>
</el-form-item>
</el-col>
</el-select>
</el-col>
</el-row>
<el-button slot="reference" icon="el-icon-s-check" @click="showSponsorsAndMonitors">主办人监控人查询</el-button>
</el-popover>
</el-form-item>
<div v-if="addForm.isRefForm=='1' && addForm.formId!=null && addForm.formId!='' && addForm.formShowType!='table' "> <div v-if="addForm.isRefForm=='1' && addForm.formId!=null && addForm.formId!='' && addForm.formShowType!='table' ">
<form-data-mng-for-flow-form :form-data-id="filters.formDataId" :qxCode="addForm.mainQx" :isFlowStart="true" :form-id="addForm.formId" :submit-event="formDataSubmitEvent" @submit="startSubmit"><div></div></form-data-mng-for-flow-form> <form-data-mng-for-flow-form :form-data-id="filters.formDataId" :qxCode="addForm.mainQx" :isFlowStart="true" :form-id="addForm.formId" :submit-event="formDataSubmitEvent" @submit="startSubmit"><div></div></form-data-mng-for-flow-form>
</div> </div>
@ -354,6 +358,7 @@
showAttachment:false, showAttachment:false,
nodeInfoVisible:false, nodeInfoVisible:false,
nodeInfos:[], nodeInfos:[],
sponsorsAndMonitorsVisible:false,
/**end 在上面加自定义属性**/ /**end 在上面加自定义属性**/
}//end return }//end return
},//end data },//end data
@ -377,17 +382,7 @@
params.extVars=this.params.extVars params.extVars=this.params.extVars
params.flowVars=this.params.flowVars params.flowVars=this.params.flowVars
} }
if(this.nodeInfos.length<=0){
this.listBpmnActAssignees(true);
this.$message({ message: "未配置节点审批人,无法提交,将自动加载默认配置,请稍后提交", type: 'error' });
return;
}else{
if(this.nodeInfos.some(i=>i.toCreater!='1' && (i.nodeUsers==null || i.nodeUsers.length==0))){
this.$message.error("还有节点未配置审批人,请配置审批人后再提交");
this.showNodeInfoDialog();
return;
}
}
this.addLoading = true; this.addLoading = true;
params.procinstParames.startDeptName=this.myDepts.filter(d=>d.deptid==this.addForm.deptid)[0].deptName; params.procinstParames.startDeptName=this.myDepts.filter(d=>d.deptid==this.addForm.deptid)[0].deptName;
params.procinstParames.startUsername=this.userInfo.username params.procinstParames.startUsername=this.userInfo.username
@ -450,7 +445,7 @@
}) })
}, },
initBaseUserList(){
initBaseUserList(sponsorsAndMonitorsVisible){
var that=this; var that=this;
var sponsors=[]; var sponsors=[];
var monitors=[]; var monitors=[];
@ -477,6 +472,7 @@
that.monitors=monitors that.monitors=monitors
that.sponsors=sponsors that.sponsors=sponsors
that.baseUserList=baseUserList that.baseUserList=baseUserList
this.sponsorsAndMonitorsVisible=sponsorsAndMonitorsVisible
return; return;
}else{ }else{
listUserNames({userids:baseUserList.map(i=>i.userid),branchId:that.userInfo.branchId}).then(res=>{ listUserNames({userids:baseUserList.map(i=>i.userid),branchId:that.userInfo.branchId}).then(res=>{
@ -498,6 +494,7 @@
that.sponsors=sponsors that.sponsors=sponsors
that.baseUserList=baseUserList that.baseUserList=baseUserList
} }
this.sponsorsAndMonitorsVisible=sponsorsAndMonitorsVisible
}); });
} }
@ -564,7 +561,11 @@
this.mainQxVisible=true; this.mainQxVisible=true;
}, },
showNodeInfoDialog:function(){ showNodeInfoDialog:function(){
this.nodeInfoVisible=true;
if(this.nodeInfos==null || this.nodeInfos.length==0){
this.listBpmnActAssignees(true)
}else{
this.nodeInfoVisible=true;
}
}, },
onFormFieldsLoad:function(formFields){ onFormFieldsLoad:function(formFields){
this.formFields=formFields; this.formFields=formFields;
@ -616,6 +617,14 @@
this.addForm.tagNames=this.procdef.tagNames; this.addForm.tagNames=this.procdef.tagNames;
this.addForm.mainQx=this.procdef.mainQx; this.addForm.mainQx=this.procdef.mainQx;
}, },
showSponsorsAndMonitors(){
if( (this.monitors==null || this.monitors.length==0 || this.sponsors==null||this.sponsors.length==0) && this.sponsorsAndMonitorsVisible==false ){
this.initBaseUserList(true)
}else{
this.sponsorsAndMonitorsVisible=!this.sponsorsAndMonitorsVisible;
}
},
listBpmnActAssignees(nodeInfoVisible){ listBpmnActAssignees(nodeInfoVisible){
this.nodeInfos=[]; this.nodeInfos=[];
this.listLoading = true; this.listLoading = true;
@ -649,7 +658,7 @@
this.$nextTick(() => { this.$nextTick(() => {
this.initByProcdef();//procdef this.initByProcdef();//procdef
this.initByParams();// params params this.initByParams();// params params
this.listBpmnActAssignees();
//this.listBpmnActAssignees();
this.initBaseUserList(); this.initBaseUserList();
}); });
/**在下面写其它函数***/ /**在下面写其它函数***/

2871
src/views/mdp/workflow/ru/task/TaskMng.vue
File diff suppressed because it is too large
View File

Loading…
Cancel
Save