Browse Source

优化界面

master
陈裕财 5 years ago
parent
commit
e3fd5c777f
  1. 8
      src/views/xm/core/xmMenu/XmMenuMng.vue
  2. 28
      src/views/xm/core/xmMenu/XmMenuSelect.vue
  3. 48
      src/views/xm/core/xmProduct/XmProductMng.vue
  4. 167
      src/views/xm/core/xmProduct/XmProductSelect.vue
  5. 13
      src/views/xm/core/xmTask/XmTaskList.vue
  6. 17
      src/views/xm/core/xmTestCase/XmTestCaseMng.vue
  7. 34
      src/views/xm/core/xmTestCaseExec/XmTestCaseExecMng.vue

8
src/views/xm/core/xmMenu/XmMenuMng.vue

@ -26,7 +26,7 @@
<el-button v-if=" batchEditVisible==true && isPmUser " type="danger" v-loading="load.del" @click="batchDel" :disabled="this.sels.length===0 || load.del==true">批量删除</el-button> <el-button v-if=" batchEditVisible==true && isPmUser " type="danger" v-loading="load.del" @click="batchDel" :disabled="this.sels.length===0 || load.del==true">批量删除</el-button>
</el-row> </el-row>
<el-row v-show="batchEditVisible" class="app-container"> <el-row v-show="batchEditVisible" class="app-container">
<div>123456789</div>
<el-table :data="xmMenusTreeData" class="drag-table" default-expand-all row-key="menuId" :tree-props="{children: 'children', hasChildren: 'hasChildren'}" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;"> <el-table :data="xmMenusTreeData" class="drag-table" default-expand-all row-key="menuId" :tree-props="{children: 'children', hasChildren: 'hasChildren'}" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table-column sortable type="selection" width="45"></el-table-column> <el-table-column sortable type="selection" width="45"></el-table-column>
<el-table-column sortable prop="seqNo" label="序号" min-width="100"> <el-table-column sortable prop="seqNo" label="序号" min-width="100">
@ -76,7 +76,7 @@
<el-table-column sortable type="selection" width="40"></el-table-column> <el-table-column sortable type="selection" width="40"></el-table-column>
<el-table-column prop="menuName" label="故事名称" min-width="140" > <el-table-column prop="menuName" label="故事名称" min-width="140" >
<template slot-scope="scope"> <template slot-scope="scope">
<el-link type="primary" @click="showMenuExchange(scope.row)">{{scope.row.seqNo}}&nbsp;&nbsp;{{scope.row.menuName}}</el-link>
{{scope.row.seqNo}}&nbsp;&nbsp;<el-link type="primary" @click="showMenuExchange(scope.row)">{{scope.row.menuName}}</el-link>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="mmUsername" label="负责人" min-width="80" > <el-table-column prop="mmUsername" label="负责人" min-width="80" >
@ -96,7 +96,7 @@
trigger="click" > trigger="click" >
<div v-html="scope.row.remark"> <div v-html="scope.row.remark">
</div> </div>
<el-button slot="reference">{{scope.row.remark?scope.row.remark.substr(0,20)+"...":""}}</el-button>
<div slot="reference">{{scope.row.remark?scope.row.remark.substr(0,20)+"...":""}}</div>
</el-popover> </el-popover>
<div v-else v-html="scope.row.remark"> <div v-else v-html="scope.row.remark">
</div> </div>
@ -185,7 +185,7 @@
import XmMenuAdd from './XmMenuAdd';// import XmMenuAdd from './XmMenuAdd';//
import XmMenuEdit from './XmMenuEdit';// import XmMenuEdit from './XmMenuEdit';//
import XmProductMng from '../xmProduct/XmProductMng';//
import XmProductMng from '../xmProduct/XmProductSelect';//
import XmMenuTemplateMng from '../xmMenuTemplate/XmMenuTemplateMng';// import XmMenuTemplateMng from '../xmMenuTemplate/XmMenuTemplateMng';//
import XmMenuRichDetail from './XmMenuRichDetail'; import XmMenuRichDetail from './XmMenuRichDetail';
import XmTaskList from '../xmTask/XmTaskList'; import XmTaskList from '../xmTask/XmTaskList';

28
src/views/xm/core/xmMenu/XmMenuSelect.vue

@ -1,22 +1,26 @@
<template> <template>
<section> <section>
<el-row class="app-container">
<el-input v-model="filters.key" style="width: 20%;" placeholder="模糊查询"></el-input>
<el-button type="primary" v-loading="load.list" :disabled="load.list==true" v-on:click="searchXmMenus">查询</el-button>
<el-button type="warning" v-if="multi" v-on:click="multiSelectedConfirm">确认选择</el-button>
</el-row>
<el-row class="app-container">
<el-col :span="6">
<el-row>
<el-col :span="6" class="app-container">
<xm-product-mng @row-click="onProductSelected" ref="xmProductMng" :simple="true"></xm-product-mng> <xm-product-mng @row-click="onProductSelected" ref="xmProductMng" :simple="true"></xm-product-mng>
</el-col> </el-col>
<el-col :span="18">
<el-col :span="18" >
<el-row class="app-container">
<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="searchXmMenus" icon="el-icon-search"></el-button>
</template>
</el-input>
<el-button type="warning" v-if="multi" v-on:click="multiSelectedConfirm">确认选择</el-button>
</el-row>
<el-row class="app-container">
<el-table :data="xmMenusTreeData" default-expand-all row-key="menuId" :tree-props="{children: 'children', hasChildren: 'hasChildren'}" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;"> <el-table :data="xmMenusTreeData" default-expand-all row-key="menuId" :tree-props="{children: 'children', hasChildren: 'hasChildren'}" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table-column v-if="multi" type="selection" width="50"></el-table-column> <el-table-column v-if="multi" type="selection" width="50"></el-table-column>
<el-table-column prop="menuName" label="故事名称" min-width="140" > <el-table-column prop="menuName" label="故事名称" min-width="140" >
<template slot-scope="scope"> <template slot-scope="scope">
<el-link @click="toMenu(scope.row)">{{scope.row.seqNo}}&nbsp;&nbsp;{{scope.row.menuName}}</el-link>
{{scope.row.seqNo}}&nbsp;&nbsp;<el-link @click="toMenu(scope.row)">{{scope.row.menuName}}</el-link>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="mmUsername" label="负责人" min-width="100" > </el-table-column> <el-table-column prop="mmUsername" label="负责人" min-width="100" > </el-table-column>
@ -29,7 +33,7 @@
width="400" width="400"
trigger="click" trigger="click"
:content="scope.row.remark"> :content="scope.row.remark">
<el-button slot="reference">{{scope.row.remark?scope.row.remark.substr(0,20)+"...":""}}</el-button>
<div slot="reference">{{scope.row.remark?scope.row.remark.substr(0,20)+"...":""}}</div>
</el-popover> </el-popover>
<div v-else v-html="scope.row.remark"></div> <div v-else v-html="scope.row.remark"></div>
</template> </template>
@ -37,12 +41,12 @@
<el-table-column label="操作" v-if="!multi" width="200" fixed="right" > <el-table-column label="操作" v-if="!multi" width="200" fixed="right" >
<template slot-scope="scope"> <template slot-scope="scope">
<el-button type="primary" @click="selectedMenu( scope.row,scope.$index)">选择</el-button> <el-button type="primary" @click="selectedMenu( scope.row,scope.$index)">选择</el-button>
</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>
</el-row>
</el-col> </el-col>
<el-dialog title="故事谈论" :visible.sync=" menuDetailVisible" width="80%" append-to-body :close-on-click-modal="false"> <el-dialog title="故事谈论" :visible.sync=" menuDetailVisible" width="80%" append-to-body :close-on-click-modal="false">
@ -57,7 +61,7 @@
//import Sticky from '@/components/Sticky' // header //import Sticky from '@/components/Sticky' // header
//import { listOption } from '@/api/mdp/meta/itemOption';// //import { listOption } from '@/api/mdp/meta/itemOption';//
import { listXmMenu } from '@/api/xm/core/xmMenu'; import { listXmMenu } from '@/api/xm/core/xmMenu';
import XmProductMng from '../xmProduct/XmProductMng';//
import XmProductMng from '../xmProduct/XmProductSelect';//
import XmMenuRichDetail from './XmMenuRichDetail'; import XmMenuRichDetail from './XmMenuRichDetail';
import {sn} from '@/common/js/sequence' import {sn} from '@/common/js/sequence'

48
src/views/xm/core/xmProduct/XmProductMng.vue

@ -1,20 +1,24 @@
<template> <template>
<section> <section>
<el-row v-if="simple!=true" class="app-container">
<el-input v-model="filters.key" style="width: 20%;" placeholder="模糊查询"></el-input>
<el-button type="primary" v-loading="load.list" :disabled="load.list==true" v-on:click="searchXmProducts">查询</el-button>
<el-button type="primary" @click="showAdd">+产品</el-button>
<el-row class="app-container">
<el-input v-model="filters.key" style="width: 20%;" placeholder="模糊查询">
<template slot="append">
<el-button v-if="isSelectProduct!=true" type="danger" v-loading="load.del" @click="batchDel" :disabled="this.sels.length===0 || load.del==true">批量删除</el-button>
<el-button v-loading="load.list" :disabled="load.list==true" v-on:click="searchXmProducts" icon="el-icon-search"></el-button>
</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-row> </el-row>
<el-row v-show="simple!=true" class="app-container">
<el-row class="app-container">
<!--列表 XmProduct 产品表--> <!--列表 XmProduct 产品表-->
<el-table :data="xmProducts" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table max-height="750" :data="xmProducts" @sort-change="sortChange" 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>
<el-table-column sortable type="index" width="40"></el-table-column> <el-table-column sortable type="index" width="40"></el-table-column>
<el-table-column prop="productName" label="产品名称" min-width="150" > <el-table-column prop="productName" label="产品名称" min-width="150" >
<template slot-scope="scope"> <template slot-scope="scope">
<el-link type="primary" @click="showEdit(scope.row)">{{scope.row.id}}-{{scope.row.productName}}</el-link>
{{scope.row.id}}&nbsp;&nbsp;<el-link type="primary" @click="showEdit(scope.row)">{{scope.row.productName}}</el-link>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="finishRate" label="进度" min-width="80" > <el-table-column prop="finishRate" label="进度" min-width="80" >
@ -27,33 +31,17 @@
<el-table-column prop="actWorkload" label="实际工作量.人时" min-width="80" ></el-table-column> <el-table-column prop="actWorkload" label="实际工作量.人时" min-width="80" ></el-table-column>
<el-table-column label="操作" width="460" fixed="right"> <el-table-column label="操作" width="460" fixed="right">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button v-if="isSelectProduct!=true" type="warning" @click="loadTasksToXmProductState(scope.row)">刷新</el-button>
<el-button v-if="isSelectProduct!=true" type="warning" @click="showProductState(scope.row)">报告</el-button>
<el-button v-if="isSelectProduct!=true" type="success" @click="toIterationList(scope.row)">迭代</el-button>
<el-button v-if="isSelectProduct==true" @click="selectedProduct( scope.row,scope.$index)">选择</el-button>
<el-button v-if="isSelectProduct!=true" type="success" @click="toProjectList(scope.row)">项目</el-button>
<el-button v-if="isSelectProduct!=true" type="success" @click="toTaskList(scope.row)">任务</el-button>
<el-button type="warning" @click="loadTasksToXmProductState(scope.row)">刷新</el-button>
<el-button type="warning" @click="showProductState(scope.row)">报告</el-button>
<el-button type="success" @click="toIterationList(scope.row)">迭代</el-button>
<el-button type="success" @click="toProjectList(scope.row)">项目</el-button>
<el-button type="success" @click="toTaskList(scope.row)">任务</el-button>
</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>
</el-row> </el-row>
<el-row v-show="simple==true" >
<!--列表 XmProduct 产品表-->
<el-table :data="xmProducts" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table-column sortable type="index" width="40"></el-table-column>
<el-table-column prop="id" label="产品编号" min-width="80" ></el-table-column>
<el-table-column prop="productName" label="产品名称" min-width="80" ></el-table-column>
<el-table-column v-if="isSelectProduct==true" label="操作" width="160" fixed="right" >
<template slot-scope="scope">
<el-button @click="selectedProduct( 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-row>
<!--编辑 XmProduct 产品表界面--> <!--编辑 XmProduct 产品表界面-->
<el-dialog title="编辑产品" :visible.sync="editFormVisible" width="50%" append-to-body :close-on-click-modal="false"> <el-dialog title="编辑产品" :visible.sync="editFormVisible" width="50%" append-to-body :close-on-click-modal="false">
<xm-product-edit :xm-product="editForm" :visible="editFormVisible" @cancel="editFormVisible=false" @submit="afterEditSubmit"></xm-product-edit> <xm-product-edit :xm-product="editForm" :visible="editFormVisible" @cancel="editFormVisible=false" @submit="afterEditSubmit"></xm-product-edit>
@ -90,7 +78,7 @@
export default { export default {
props:['simple','isSelectProduct','selProject'],
props:['selProject'],
computed: { computed: {
...mapGetters([ ...mapGetters([
'userInfo','roles' 'userInfo','roles'

167
src/views/xm/core/xmProduct/XmProductSelect.vue

@ -0,0 +1,167 @@
<template>
<section>
<el-row >
<!--列表 XmProduct 产品表-->
<el-table :data="xmProducts" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table-column sortable type="index" width="55"></el-table-column>
<el-table-column prop="productName" label="产品名称" min-width="150" >
<template slot-scope="scope">
{{scope.row.id}}&nbsp;&nbsp;<el-link type="primary">{{scope.row.productName}}</el-link>
</template>
</el-table-column>
<el-table-column v-if="isSelectProduct==true" label="操作" width="100" fixed="right" >
<template slot-scope="scope">
<el-button @click="selectedProduct( 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-row>
</section>
</template>
<script>
import util from '@/common/js/util';//
//import Sticky from '@/components/Sticky' // header
//import { listOption } from '@/api/mdp/meta/itemOption';//
import { listXmProductWithState } from '@/api/xm/core/xmProduct';
import { mapGetters } from 'vuex'
export default {
props:['isSelectProduct','selProject'],
computed: {
...mapGetters([
'userInfo','roles'
])
},
data() {
return {
filters: {
key: ''
},
xmProducts: [],//
pageInfo:{//
total:0,//0>0
pageSize:10,//
count:false,//
pageNum:1,//1
orderFields:[],// ['sex','student_id']
orderDirs:[]// asc,desc ['asc','desc']
},
load:{ list: false, edit: false, del: false, add: false },//...
sels: [],//
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,//xmProduct
//xmProduct
addForm: {
id:'',productName:'',branchId:'',remark:''
},
editFormVisible: false,//
//xmProduct
editForm: {
id:'',productName:'',branchId:'',remark:''
},
iterationVisible:false,
productStateVisible:false,
/**begin 自定义属性请在下面加 请加备注**/
/**end 自定义属性请在上面加 请加备注**/
}
},//end data
methods: {
handleSizeChange(pageSize) {
this.pageInfo.pageSize=pageSize;
this.getXmProducts();
},
handleCurrentChange(pageNum) {
this.pageInfo.pageNum = pageNum;
this.getXmProducts();
},
// 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.getXmProducts();
},
searchXmProducts(){
this.pageInfo.count=true;
this.getXmProducts();
},
// XmProduct
getXmProducts() {
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.xxx=this.filters.key
}else{
//params.xxx=xxxxx
}
if(this.selProject){
params.projectId=this.selProject.id
}
params.branchId=this.userInfo.branchId
this.load.list = true;
listXmProductWithState(params).then((res) => {
var tips=res.data.tips;
if(tips.isOk){
this.pageInfo.total = res.data.total;
this.pageInfo.count=false;
this.xmProducts = res.data.data;
}else{
this.$message({ message: tips.msg, type: 'error' });
}
this.load.list = false;
}).catch( err => this.load.list = false );
},
//xmProduct
selsChange: function (sels) {
this.sels = sels;
},
rowClick: function(row, event, column){
this.$emit('row-click',row, event, column);// @row-click="rowClick"
},
selectedProduct:function(row){
this.$emit('selected',row);
},
},//end methods
components: {
//
},
mounted() {
this.$nextTick(() => {
this.getXmProducts();
});
}
}
</script>
<style scoped>
</style>

13
src/views/xm/core/xmTask/XmTaskList.vue

@ -1,20 +1,20 @@
<template> <template>
<section> <section>
<el-row class="xm-task"> <el-row class="xm-task">
<el-row>
<el-col :span="4" v-if=" filters.selProject">
<xm-project-phase-mng :sel-project="filters.selProject" :simple="true" @row-click="projectPhaseRowClick"></xm-project-phase-mng>
</el-col>
<el-col :span=" filters.selProject?20:24">
<el-row>
<el-menu active-text-color="#00abfc" :default-active="filters.taskType" @select="changeTaskType" class="el-menu-demo" mode="horizontal"> <el-menu active-text-color="#00abfc" :default-active="filters.taskType" @select="changeTaskType" class="el-menu-demo" mode="horizontal">
<el-menu-item index="all">全部任务类型</el-menu-item> <el-menu-item index="all">全部任务类型</el-menu-item>
<el-menu-item v-for="(i,index) in options.taskType" :index="i.optionValue" :key="index">{{i.optionName}}</el-menu-item> <el-menu-item v-for="(i,index) in options.taskType" :index="i.optionValue" :key="index">{{i.optionName}}</el-menu-item>
<el-tag>{{filters.selProject?filters.selProject.name:'未选择项目'}}</el-tag><el-button type="success" v-if="!selProject" @click="selectProjectVisible=true"></el-button> <el-tag>{{filters.selProject?filters.selProject.name:'未选择项目'}}</el-tag><el-button type="success" v-if="!selProject" @click="selectProjectVisible=true"></el-button>
<el-button v-if="isMultiSelect" @click="selectedTasks" type="primary">确认选择</el-button> <el-button v-if="isMultiSelect" @click="selectedTasks" type="primary">确认选择</el-button>
</el-menu> </el-menu>
<el-row>
已选择<el-tag v-for="(item,index) in sels" :key="index" closable @close="clearSelectTask(item)">{{item.sortLevel}}&nbsp;{{item.name}}</el-tag>
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="4" v-if=" filters.selProject">
<xm-project-phase-mng :sel-project="filters.selProject" :simple="true" @row-click="projectPhaseRowClick"></xm-project-phase-mng>
</el-col>
<el-col :span=" filters.selProject?20:24">
<el-table <el-table
ref="taskTable" ref="taskTable"
show-summary show-summary
@ -60,6 +60,7 @@
</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>
</el-row>
</el-col> </el-col>
</el-row> </el-row>
</el-row> </el-row>

17
src/views/xm/core/xmTestCase/XmTestCaseMng.vue

@ -2,15 +2,18 @@
<section> <section>
<el-row class="app-container"> <el-row class="app-container">
<el-button type="success" v-if="!multiSelect" @click="showAdd">+测试用例</el-button>
<el-button type="warning" v-if="multiSelect" @click="selected">确认选中</el-button>
<el-button v-if="!multiSelect " type="danger" v-loading="load.del" @click="batchDel" :disabled="this.sels.length===0 || load.del==true">批量删除</el-button>
</el-row>
<el-row class="app-container">
<div> <div>
已选故事<el-tag v-if=" !filters.menus || filters.menus.length==0" @click="showMenu"> 未选,点我</el-tag><el-tag @click="showMenu" v-for="(item,index) in filters.menus" :key="index" closable @close="clearFiltersMneu(item)">{{item.menuName}}</el-tag> 已选故事<el-tag v-if=" !filters.menus || filters.menus.length==0" @click="showMenu"> 未选,点我</el-tag><el-tag @click="showMenu" v-for="(item,index) in filters.menus" :key="index" closable @close="clearFiltersMneu(item)">{{item.menuName}}</el-tag>
<el-input v-model="filters.key" style="width: 20%;" placeholder="模糊查询"></el-input>
<el-button type="primary" v-loading="load.list" :disabled="load.list==true" v-on:click="searchXmTestCases">查询</el-button>
<el-input v-model="filters.key" style="width: 20%;" placeholder="模糊查询">
<template slot="append">
<el-button type="primary" v-loading="load.list" :disabled="load.list==true" v-on:click="searchXmTestCases" icon="el-icon-search"></el-button>
</template>
</el-input>
<el-button type="success" v-if="!multiSelect" circle icon="el-icon-plus" @click="showAdd"></el-button>
<el-button type="warning" v-if="multiSelect" @click="selected">确认选中</el-button>
<el-button v-if="!multiSelect " type="danger" icon="el-icon-delete" v-loading="load.del" @click="batchDel" :disabled="this.sels.length===0 || load.del==true">批量删除</el-button>
</div> </div>
</el-row> </el-row>
<el-row class="app-container"> <el-row class="app-container">

34
src/views/xm/core/xmTestCaseExec/XmTestCaseExecMng.vue

@ -1,11 +1,7 @@
<template> <template>
<section> <section>
<el-row class="app-container"> <el-row class="app-container">
<el-button v-if="!batchEditVisible" type="primary" @click="showCase">由用例创建执行计划</el-button>
<el-button v-if="!batchEditVisible" type="primary" @click="showBatchEdit">批量修改</el-button>
<el-button v-if="!batchEditVisible" type="danger" v-loading="load.del" @click="batchDel" :disabled="this.sels.length===0 || load.del==true">批量删除</el-button>
<el-button v-if="batchEditVisible" type="warning" @click="batchEditXmTestCaseExec">批量保存</el-button>
<el-button v-if="batchEditVisible" type="success" @click="noBatchEdit">返回</el-button>
</el-row> </el-row>
<el-row class="app-container" v-if="!batchEditVisible"> <el-row class="app-container" v-if="!batchEditVisible">
<div > <div >
@ -13,17 +9,33 @@
{{selProject?"":"已选项目:"}}<el-tag type="success" v-if="this.filters.selProject && !selProject " closable @close="clearProject" @click="showProjectList">{{ this.filters.selProject.name }}</el-tag> {{selProject?"":"已选项目:"}}<el-tag type="success" v-if="this.filters.selProject && !selProject " closable @close="clearProject" @click="showProjectList">{{ this.filters.selProject.name }}</el-tag>
<el-tag type="success" v-if="!this.filters.selProject" @click="showProjectList">未选点我</el-tag> <el-tag type="success" v-if="!this.filters.selProject" @click="showProjectList">未选点我</el-tag>
已选故事<el-tag v-if=" !filters.menus || filters.menus.length==0" @click="showMenu">未选,点我</el-tag><el-tag v-for="(item,index) in filters.menus" @click="showMenu" :key="index" closable @close="clearFiltersMneu(item)">{{item.menuName}}</el-tag> 已选故事<el-tag v-if=" !filters.menus || filters.menus.length==0" @click="showMenu">未选,点我</el-tag><el-tag v-for="(item,index) in filters.menus" @click="showMenu" :key="index" closable @close="clearFiltersMneu(item)">{{item.menuName}}</el-tag>
<el-input v-model="filters.key" style="width: 20%;" placeholder="模糊查询"></el-input>
<el-button type="primary" v-loading="load.list" :disabled="load.list==true" v-on:click="searchXmTestCaseExecs">查询</el-button>
<el-input v-model="filters.key" style="width: 20%;" placeholder="模糊查询">
<template slot="append">
<el-button type="primary" v-loading="load.list" :disabled="load.list==true" v-on:click="searchXmTestCaseExecs" icon="el-icon-search"></el-button>
</template>
</el-input>
<el-button type="primary" @click="showCase" icon="el-icon-plus">由用例创建执行计划</el-button>
<el-button type="primary" @click="showBatchEdit" icon="el-icon-edit">批量修改</el-button>
<el-button type="danger" v-loading="load.del" @click="batchDel" icon="el-icon-delete" :disabled="this.sels.length===0 || load.del==true">批量删除</el-button>
</div> </div>
</el-row> </el-row>
<el-row class="app-container" v-if="batchEditVisible">
<el-input v-model="filters.key" style="width: 20%;" placeholder="模糊查询">
<template slot="append">
<el-button type="primary" v-loading="load.list" :disabled="load.list==true" v-on:click="searchXmTestCaseExecs" icon="el-icon-search"></el-button>
</template>
</el-input>
<el-button v-if="batchEditVisible" type="warning" @click="batchEditXmTestCaseExec">批量保存</el-button>
<el-button v-if="batchEditVisible" type="success" @click="noBatchEdit" icon="el-icon-back">返回</el-button>
</el-row>
<el-row class="app-container"> <el-row class="app-container">
<!--列表 XmTestCaseExec xm_test_case_exec--> <!--列表 XmTestCaseExec xm_test_case_exec-->
<el-table v-if="!gstcVisible" :data="xmTestCaseExecs" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table max-height="650" v-if="!gstcVisible" :data="xmTestCaseExecs" @sort-change="sortChange" highlight-current-row v-loading="load.list" border @selection-change="selsChange" @row-click="rowClick" style="width: 100%;">
<el-table-column type="selection" width="45"></el-table-column> <el-table-column type="selection" width="45"></el-table-column>
<el-table-column sortable type="index" width="45"></el-table-column> <el-table-column sortable type="index" width="45"></el-table-column>
<el-table-column prop="projectName" label="项目名称" min-width="100" > <el-table-column prop="projectName" label="项目名称" min-width="100" >
<template slot="header" slot-scope="scope">
<template slot="header">
项目<el-button @click="showProjectList" icon="el-icon-search" circle size="mini"></el-button> 项目<el-button @click="showProjectList" icon="el-icon-search" circle size="mini"></el-button>
</template> </template>
</el-table-column> </el-table-column>
@ -41,13 +53,13 @@
<el-table-column prop="taskName" label="任务" min-width="100" > <el-table-column prop="taskName" label="任务" min-width="100" >
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag>{{scope.row.taskName?scope.row.taskName:'未关联任务'}}</el-tag>
{{scope.row.taskName?scope.row.taskName:'未关联任务'}}
<el-button v-if=" batchEditVisible==true " type="warning" @click="showSelectTask(scope.row)">选任务</el-button> <el-button v-if=" batchEditVisible==true " type="warning" @click="showSelectTask(scope.row)">选任务</el-button>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="execUsername" label="执行人姓名" min-width="100" > <el-table-column prop="execUsername" label="执行人姓名" min-width="100" >
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag>{{scope.row.execUsername?scope.row.execUsername:'未设置'}}</el-tag>
{{scope.row.execUsername?scope.row.execUsername:'未设置'}}
<el-button v-if=" batchEditVisible==true " type="warning" @click="showGroupUsers(scope.row)">选人</el-button> <el-button v-if=" batchEditVisible==true " type="warning" @click="showGroupUsers(scope.row)">选人</el-button>
</template> </template>
</el-table-column> </el-table-column>

Loading…
Cancel
Save