Browse Source

优化

master
陈裕财 4 years ago
parent
commit
8bf33ebd09
  1. 30
      src/views/mdp/workflow/hi/procinst/ProcinstMng.vue
  2. 8
      src/views/mdp/workflow/re/procdef/ProcdefListForBizStart.vue
  3. 18
      src/views/mdp/workflow/re/procdef/ProcdefListForSimpleStart.vue
  4. 6
      src/views/mdp/workflow/re/procdefParames/ProcdefParamesSet.vue
  5. 30
      src/views/mdp/workflow/ru/execution/ExecutionMng.vue
  6. 4
      src/views/mdp/workflow/ru/execution/ExecutionMngForFormData.vue
  7. 33
      src/views/mdp/workflow/ru/procinstParames/ProcinstParamesStartSet.vue
  8. 34
      src/views/mdp/workflow/ru/task/TaskMng.vue
  9. 22
      src/views/xm/core/xmProduct/XmProductOverviewComplex.vue
  10. 17
      src/views/xm/core/xmProject/XmProjectOverviewComplex.vue

30
src/views/mdp/workflow/hi/procinst/ProcinstMng.vue

@ -28,7 +28,7 @@
<font >
查询范围
</font>
<el-select v-model="filters.filterType" placeholder="查询范围">
<el-select size="mini" v-model="filters.filterType" placeholder="查询范围">
<el-option value="" label="全部"> </el-option>
<el-option value="startUserId" label="我发起"> </el-option>
<el-option value="partake" label="我参与"> </el-option>
@ -40,7 +40,7 @@
<font >
分类
</font>
<el-select v-model="filters.procCategory" clearable filterable placeholder="选择分类" >
<el-select size="mini" v-model="filters.procCategory" clearable filterable placeholder="选择分类" >
<el-option v-for="item in categorys" :key="item" :label="item" :value="item"></el-option>
</el-select>
</el-row>
@ -54,7 +54,7 @@
{{tag.tagName}}
</el-tag>
</el-row>
<el-button v-if="filters.tags==null || filters.tags.length==0"
<el-button v-if="filters.tags==null || filters.tags.length==0" size="mini"
@click.native="showTagSelect(false)">选择标签</el-button>
</el-row>
<el-row>
@ -65,7 +65,7 @@
@click="userSelectVisible=true" @close="handleFiltersTagClose('','assignee')">
{{filters.assignee.username}}
</el-tag>
<el-button v-else @click.native="userSelectVisible=true">选择执行人</el-button>
<el-button v-else size="mini" @click.native="userSelectVisible=true">选择执行人</el-button>
</el-row>
<el-row>
<font >
@ -93,13 +93,13 @@
</el-col> -->
<el-row>
<el-button type="primary" v-on:click="searchProcinsts" icon="el-icon-search">查询</el-button>
<el-button size="mini" type="primary" v-on:click="searchProcinsts" icon="el-icon-search">查询</el-button>
</el-row>
<el-row>
<el-divider content-position="left">其它操作</el-divider>
<el-button @click.native="showTagSelect(true)">给任务打标签</el-button>
<el-button @click="handleDownload">导出数据</el-button>
<el-button size="mini" @click.native="showTagSelect(true)">给任务打标签</el-button>
<el-button size="mini" @click="handleDownload">导出数据</el-button>
</el-row>
</el-row>
</el-drawer>
@ -109,7 +109,7 @@
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="mainTitle" label="流程(点击详情)" min-width="300" show-overflow-tooltip>
<el-table-column sortable prop="mainTitle" label="流程(点击详情)" min-width="300">
<template slot-scope="scope">
<el-link type="primary" @click="showEdit( scope.row,scope.$index)">{{scope.row.mainTitle}}</el-link>
</template>
@ -143,7 +143,7 @@
:page-size="pageInfo.pageSize" :total="pageInfo.total" style="float:right;"></el-pagination>
<!--编辑 Execution act_ru_execution界面-->
<el-drawer title="任务详情" :visible.sync="editFormVisible" :size="dialogWidth()" :withHeader="false"
:close-on-click-modal="false">
:close-on-click-modal="false" append-to-body>
<procinst-parames-execution-set :companyEmployees="companyEmployees" :companyDepts="companyDepts"
:taskInfo="editForm" :procDefId="editForm.procDefId" :procInstId="editForm.procInstId"
:visible="editFormVisible" @cancel="editFormVisible=false" @submit="afterEditSubmit">
@ -202,7 +202,7 @@
return screen.width;
}
},
props: ["isMyMonitors", "isMyStart", "isMySponsors", "isMyPartake", "isAll"],
props: ["isMyMonitors", "isMyStart", "isMySponsors", "isMyPartake", "isAll",'bizParentPkid','bizPkid','procInstIds'],
data() {
const fromStartTime = new Date();
const toStartTime = new Date();
@ -477,6 +477,16 @@
if (this.filters.procCategory != "") {
params.category = this.filters.procCategory;
}
if(this.bizParentPkid){
params.bizParentPkid=this.bizParentPkid
}
if(this.bizPkid){
params.bizPkid=this.bizPkid
}
if(this.procInstIds){
params.procInstIds=this.procInstIds
}
params.tenantId = this.userInfo.branchId;
this.listLoading = true;
listProcinst(params)

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

@ -25,6 +25,11 @@
'userInfo'
]),
},
watch:{
$route(to,from){
this.dataInit();
}
},
data() {
return {
filters: {
@ -59,6 +64,7 @@
this.$router.back(-1);
},
dataInit(){
debugger;
this.$nextTick(()=>{
var key="ProcdefListForBizStart"
if(this.$route.query && this.$route.query.params){
@ -98,7 +104,7 @@
//
},
activated:function(){
this.dataInit();
//this.dataInit();
},
mounted() {
this.dataInit();

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

@ -56,7 +56,7 @@
</el-dialog>
</el-row>
</el-row>
<el-row v-else-if="flowStartVisible==true">
<el-row v-if="flowStartVisible==true">
<procinst-parames-start-set :procdef="addForm" :visible="flowStartVisible" :params="filters.params"
@cancel="startCancel"></procinst-parames-start-set>
</el-row>
@ -86,11 +86,14 @@
return screen.width;
},
},
watch: {
params: function(params) {
this.filters.params = params;
this.searchProcdefs();
watch: {
params: {
handler: function() {
this.flowStartVisible=false;
this.filters.params = this.params;
this.searchProcdefs();
},
deep: true
}
},
data() {
@ -262,6 +265,7 @@
if (tips.isOk) {
this.pageInfo.total = res.data.total
this.pageInfo.count = false
this.procdefs = res.data.data;
if (res.data.data.length == 1) {
this.addForm = res.data.data[0]
this.flowStartVisible = true;
@ -269,7 +273,7 @@
this.flowStartVisible = false;
this.$message.success("请选中一个流程")
}
this.procdefs = res.data.data;
} else {
this.$message({showClose: true,
message: tips.msg,

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

@ -97,9 +97,9 @@
min-width="250">
<template slot-scope="scope">
{{showAssigneeTips(scope.row)}}
<el-button round v-if="scope.row.candidate=='1'" @click.native="showCandidateSelectDialog(scope.row,'')" :loading="addLoading">选候选人</el-button>
<el-button round v-if="scope.row.candidate!='1' " @click.native="showUserSelectDialog(scope.row,'')" :loading="addLoading">选人员</el-button>
<el-button round v-if="scope.row.toCreater!='1'" @click.native="setAssigneeAsStartUser(scope.row)">转发起人</el-button>
<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>
</el-table-column>
<el-table-column

30
src/views/mdp/workflow/ru/execution/ExecutionMng.vue

@ -23,8 +23,8 @@
<el-popover placement="top" width="375" trigger="manual" v-model="weixinContentVisible">
<p>{{weixinContent}}</p>
<div style="text-align: right; margin: 0">
<el-button type="text" @click="doCopyWeixinUrl">拷贝链接</el-button>
<el-button type="primary" @click="doCopyWeixinContent">拷贝内容</el-button>
<el-button size="mini" type="text" @click="doCopyWeixinUrl">拷贝链接</el-button>
<el-button type="primary" size="mini" @click="doCopyWeixinContent">拷贝内容</el-button>
</div>
<el-button slot="reference" class="hidden-lg-and-down" icon="el-icon-alarm-clock " v-on:click="showWeixin">
微信催办</el-button>
@ -38,7 +38,7 @@
<font>
查询范围
</font>
<el-select v-model="filters.filterType" placeholder="查询范围">
<el-select size="mini" v-model="filters.filterType" placeholder="查询范围">
<el-option value="" label="全部"> </el-option>
<el-option value="startUserId" label="我发起"> </el-option>
<el-option value="partake" label="我参与"> </el-option>
@ -64,7 +64,7 @@
{{tag.tagName}}
</el-tag>
</el-row>
<el-button v-if="filters.tags==null || filters.tags.length==0"
<el-button v-if="filters.tags==null || filters.tags.length==0" size="mini"
@click.native="showTagSelect(false)">选择标签</el-button>
</el-row>
<el-row >
@ -75,15 +75,15 @@
@click="userSelectVisible=true" @close="handleFiltersTagClose('','assignee')">
{{filters.assignee.username}}
</el-tag>
<el-button v-else @click.native="userSelectVisible=true">选择执行人</el-button>
<el-button v-else size="mini" @click.native="userSelectVisible=true">选择执行人</el-button>
</el-row>
<el-row >
<font>
流程状态
</font>
<el-button :type="filters.suspensionState=='2'?'success':''"
<el-button size="mini" :type="filters.suspensionState=='2'?'success':''"
v-on:click="filters.suspensionState='2'">挂起的</el-button>
<el-button :type="filters.suspensionState=='1'?'success':''"
<el-button size="mini" :type="filters.suspensionState=='1'?'success':''"
v-on:click="filters.suspensionState='1'">活动的</el-button>
</el-row>
<el-row >
@ -106,20 +106,20 @@
</el-date-picker>
</el-row>
<el-row >
<el-button type="primary" v-on:click="searchExecutions" icon="el-icon-search">查询</el-button>
<el-button size="mini" type="primary" v-on:click="searchExecutions" icon="el-icon-search">查询</el-button>
</el-row>
<el-row >
<el-divider content-position="left">其它操作</el-divider>
<el-checkbox v-model="showCalendar">按日历风格显示</el-checkbox>
<el-button @click.native="showTagSelect(true)">添加标签</el-button>
<el-button @click="handleDownload">导出数据</el-button>
<el-checkbox size="mini" v-model="showCalendar">按日历风格显示</el-checkbox>
<el-button size="mini" @click.native="showTagSelect(true)">添加标签</el-button>
<el-button size="mini" @click="handleDownload">导出数据</el-button>
</el-row>
<el-row >
<el-divider content-position="left">催办</el-divider>
<el-button v-on:click="showWeixinTask">微信催办</el-button>
<el-button v-on:click="showSendSms">短信催办</el-button>
<el-button v-on:click="showOaMsg">OAMSG催办</el-button>
<el-button size="mini" v-on:click="showWeixinTask">微信催办</el-button>
<el-button size="mini" v-on:click="showSendSms">短信催办</el-button>
<el-button size="mini" v-on:click="showOaMsg">OAMSG催办</el-button>
</el-row>
</el-row>
@ -131,7 +131,7 @@
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="mainTitle" label="流程(点击详情)" min-width="300" show-overflow-tooltip>
<el-table-column sortable prop="mainTitle" label="流程(点击详情)" min-width="300">
<template slot-scope="scope">
<el-link type="primary" @click="showTasksInfo( scope.row,scope.$index)">{{scope.row.mainTitle}}
</el-link>

4
src/views/mdp/workflow/ru/execution/ExecutionMngForFormData.vue

@ -15,8 +15,8 @@
v-model="weixinContentVisible">
<p>{{weixinContent}}</p>
<div style="text-align: right; margin: 0">
<el-button type="text" @click="doCopyWeixinUrl">拷贝链接</el-button>
<el-button type="primary" @click="doCopyWeixinContent">拷贝内容</el-button>
<el-button size="mini" type="text" @click="doCopyWeixinUrl">拷贝链接</el-button>
<el-button type="primary" size="mini" @click="doCopyWeixinContent">拷贝内容</el-button>
</div>
<el-button slot="reference" class="hidden-sm-and-down" v-on:click="showWeixin">微信催办</el-button>
</el-popover>

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

@ -4,9 +4,9 @@
<!--新增界面 ProcinstParames 流程实例参数设置表-->
<el-col :span="24">
<el-form :model="addForm" :label-width="labelWidth()" :rules="addFormRules" ref="addForm" >
<el-form :model="addForm" size="small" :label-width="labelWidth()" :rules="addFormRules" ref="addForm" >
<el-form-item label="流程标题" prop="mainTitle">
<el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" :span="10"> <el-input v-model="addForm.mainTitle" auto-complete="off"></el-input></el-col>
<el-input style="width:100%;" v-model="addForm.mainTitle" auto-complete="off"></el-input>
</el-form-item>
<el-form-item label="标签" prop="tagNames">
<font v-if="addForm.tagNames">
@ -573,27 +573,18 @@
initByParams(){
if(this.params){
this.filters.params=this.params;
if( this.params.formId && this.params.formDataId){
this.addForm.formId=this.params.formId
this.filters.formDataId=this.params.formDataId
}
if(this.params.mainTitle!='' && this.params.mainTitle!=null){
this.addForm.mainTitle=this.params.mainTitle
}
if(this.params.mainContext!='' && this.params.mainContext!=null){
this.addForm.mainContext=this.params.mainContext
}
this.filters.params=this.params;
this.addForm.formId=this.params.formId
this.filters.formDataId=this.params.formDataId
this.addForm.mainTitle=this.params.mainTitle
this.addForm.mainContext=this.params.mainContext
if(this.params.bizUrl!='' && this.params.bizUrl!=null ){
this.addForm.mainContext=this.addForm.mainContext+'<br><p><a href='+this.params.bizUrl+' target="_blank">'+'点击查看业务数据'+'</a></p>'
}
if(this.params.restUrl!='' && this.params.restUrl!=null){
this.addForm.restUrl=this.params.restUrl
}
if(this.params.bizKey!='' && this.params.bizKey!=null){
this.addForm.bizKey=this.params.bizKey
}
}
this.addForm.restUrl=this.params.restUrl
this.addForm.bizKey=this.params.bizKey
this.addForm.bizParentPkid=this.params.bizParentPkid
this.addForm.bizPkid=this.params.bizPkid
}
},
initByProcdef(){

34
src/views/mdp/workflow/ru/task/TaskMng.vue

@ -11,8 +11,8 @@
<el-popover placement="top" width="375" trigger="manual" v-model="weixinContentVisible">
<p>{{weixinContent}}</p>
<div style="text-align: right; margin: 0">
<el-button type="text" @click="doCopyWeixinUrl">拷贝链接</el-button>
<el-button type="primary" @click="doCopyWeixinContent">拷贝内容</el-button>
<el-button size="mini" type="text" @click="doCopyWeixinUrl">拷贝链接</el-button>
<el-button type="primary" size="mini" @click="doCopyWeixinContent">拷贝内容</el-button>
</div>
<el-button slot="reference" v-show="assigneeToMe===false"
v-on:click="showWeixin" class="hidden-sm-and-down">微信催办</el-button>
@ -48,7 +48,7 @@
{{tag.tagName}}
</el-tag>
</el-row>
<el-button v-if="filters.tags==null || filters.tags.length==0"
<el-button v-if="filters.tags==null || filters.tags.length==0" size="mini"
@click.native="showTagSelect(false)">选择标签</el-button>
</el-row>
<el-row>
@ -90,7 +90,7 @@
<el-table-column type="selection" width="40" v-if="screenWidth>=500" :class="'hidden-sm-and-down'">
</el-table-column>
<el-table-column type="index" width="40" :class="'hidden-sm-and-down'"></el-table-column>
<el-table-column sortable prop="mainTitle" label="流程(点击详情)" min-width="300" show-overflow-tooltip>
<el-table-column sortable prop="mainTitle" label="流程(点击详情)" min-width="300">
<template slot-scope="scope">
<el-link type="primary" @click="showTaskDetail( scope.row,scope.$index)">{{scope.row.mainTitle}}
</el-link>
@ -197,12 +197,12 @@
</template>
</el-calendar>
<el-dialog title="短信催办" :visible.sync="sendSmsVisible" :width="dialogWidth()" :close-on-click-modal="false">
<el-dialog title="短信催办" :visible.sync="sendSmsVisible" :width="dialogWidth()" :close-on-click-modal="false" append-to-body>
<send-sms :sms-body-params="smsBodyParams" :sms-user-list="smsUserList" :load-phoneno-by-userid="true"
:visible="sendSmsVisible" @cancel="sendSmsVisible=false"></send-sms>
</el-dialog>
<el-drawer fullscreen title="任务详情" :visible.sync="editFormVisible" :size="dialogWidth()" :withHeader="false"
:close-on-click-modal="false">
:close-on-click-modal="false" append-to-body >
<procinst-parames-execution-set :companyEmployees="companyEmployees" :companyDepts="companyDepts"
:taskInfo="editForm" :procDefId="editForm.procDefId" :procInstId="editForm.procInstId"
:visible="editFormVisible" @cancel="editFormVisible=false" @submit="afterEditSubmit">
@ -259,7 +259,7 @@
export default {
name: "TaskMng",
props: ["assigneeToMe", "defaultShowCalendar", "isClaim"], //
props: ["assigneeToMe", "defaultShowCalendar", "isClaim","bizParentPkid","bizPkid","procInstIds"], //
computed: {
...mapGetters(["userInfo", "myDepts", "myPosts"]),
screenWidth: function() {
@ -267,6 +267,7 @@
}
},
activated: function() {
debugger;
if (this.assigneeToMe !== false) {
if (this.isClaim == undefined || this.isClaim === false) {
this.filters.assignee = this.userInfo.userid;
@ -274,6 +275,8 @@
} else {
this.searchMyCandidateUserTasks();
}
}else{
this.searchAssigneeToAnyTasks()
}
},
data() {
@ -830,6 +833,15 @@
params.toPlanFinishTime =
this.filters.planFinishTimeRanger[1] + " 23:59:59";
}
if(this.bizParentPkid){
params.bizParentPkid=this.bizParentPkid
}
if(this.bizPkid){
params.bizPkid=this.bizPkid
}
if(this.procInstIds){
params.procInstIds=this.procInstIds
}
params.tenantId = this.userInfo.branchId;
this.listLoading = true;
if (this.assigneeToMe) {
@ -1410,12 +1422,12 @@
if (this.assigneeToMe !== false) {
if (this.isClaim == undefined || this.isClaim === false) {
this.filters.assignee = this.userInfo.userid;
console.log(this.myBranchDepts);
// this.filters.candidateGroups=this.myBranchDepts.map(i=>i.deptid)
//this.getTasks();
this.getTasks();
} else {
//this.searchMyCandidateUserTasks()
this.searchMyCandidateUserTasks();
}
}else{
this.searchAssigneeToAnyTasks()
}
}
};

22
src/views/xm/core/xmProduct/XmProductOverviewComplex.vue

@ -16,6 +16,15 @@
<el-menu-item index="productCalc">
<span slot="title">执行数据汇总计划</span>
</el-menu-item>
<el-menu-item index="currFlow">
<span slot="title">当前审批流</span>
</el-menu-item>
<el-menu-item index="hisFlow">
<span slot="title">历史审批流</span>
</el-menu-item>
</el-menu>
<xm-product-overview v-if="showPanelName=='overview'" :xm-product="xmProduct"></xm-product-overview>
<xm-product-edit v-if="showPanelName=='detail'" :xm-product="xmProduct"></xm-product-edit>
@ -32,7 +41,9 @@
<br>
<font color="red" style="font-size:10px;">将从项目任务汇总进度预算工作量实际工作量预算金额实际金额等数据到需求统计表</font>
</el-row>
</div>
</div>
<task-mng v-if="showPanelName === 'currFlow' " ref="currFlow" :biz-parent-pkid="xmProduct.id" > </task-mng>
<procinst-mng v-if="showPanelName === 'hisFlow' " ref="hisFlow" isAll="true" :biz-parent-pkid="xmProduct.id"></procinst-mng>
</section>
</template>
@ -44,11 +55,12 @@ import XmProductOverview from './XmProductOverview.vue';
import XmProductEdit from './XmProductEdit.vue';
import XmIterationLinkForProduct from '../xmIterationLink/XmIterationLinkForProduct.vue';
import XmProductProjectLinkMng from '../xmProductProjectLink/XmProductProjectLinkMng.vue';
import { loadTasksToXmProductState } from '@/api/xm/core/xmProductState';
import { loadTasksToXmMenuState} from '@/api/xm/core/xmMenuState';
import { loadTasksToXmProductState } from '@/api/xm/core/xmProductState';
import { loadTasksToXmMenuState} from '@/api/xm/core/xmMenuState';
import TaskMng from '@/views/mdp/workflow/ru/task/TaskMng';
import ProcinstMng from '@/views//mdp/workflow/hi/procinst/ProcinstMng';
export default {
components: { XmProductOverview, XmProductEdit, XmIterationLinkForProduct, XmProductProjectLinkMng },
components: { XmProductOverview, XmProductEdit, XmIterationLinkForProduct, XmProductProjectLinkMng,TaskMng,ProcinstMng,},
computed: {
...mapGetters(["userInfo"]),
},

17
src/views/xm/core/xmProject/XmProjectOverviewComplex.vue

@ -15,6 +15,14 @@
</el-menu-item>
<el-menu-item index="projectCalc">
<span slot="title">执行项目数据统计计划</span>
</el-menu-item>
<el-menu-item index="currFlow">
<span slot="title">当前审批流</span>
</el-menu-item>
<el-menu-item index="hisFlow">
<span slot="title">历史审批流</span>
</el-menu-item>
</el-menu>
<xm-project-overview v-if="showPanelName=='overview'" :sel-project="selProject"></xm-project-overview>
@ -34,6 +42,9 @@
<font color="red" style="font-size:10px;">将从项目任务汇总结算数据项目统计表</font>
</el-row>
</div>
<task-mng v-if="showPanelName === 'currFlow' " ref="currFlow" :biz-parent-pkid="selProject.id" > </task-mng>
<procinst-mng v-if="showPanelName === 'hisFlow' " ref="hisFlow" isAll="true" :biz-parent-pkid="selProject.id"></procinst-mng>
</section>
</template>
@ -47,10 +58,12 @@ import XmProjectDetail from './XmProjectDetail.vue';
import XmProductProjectLinkMng from '../xmProductProjectLink/XmProductProjectLinkMng.vue';
import XmIterationLinkForProject from '../xmIterationLink/XmIterationLinkForProject.vue';
import { loadTasksToXmProjectState , loadTasksSettleToXmProjectState} from '@/api/xm/core/xmProjectState';
import TaskMng from '@/views/mdp/workflow/ru/task/TaskMng';
import ProcinstMng from '@/views//mdp/workflow/hi/procinst/ProcinstMng';
import { loadTasksToXmProjectState , loadTasksSettleToXmProjectState} from '@/api/xm/core/xmProjectState';
export default {
components: { XmProjectOverview, XmProjectDetail, XmProductProjectLinkMng ,XmIterationLinkForProject},
components: { XmProjectOverview, XmProjectDetail, XmProductProjectLinkMng ,XmIterationLinkForProject,TaskMng,ProcinstMng},
computed: {
...mapGetters(["userInfo"]),
},

Loading…
Cancel
Save