Browse Source

优化查询条件

master
陈裕财 5 years ago
parent
commit
4d9629ac3e
  1. 17
      src/views/xm/core/xmIteration/XmIterationMng.vue
  2. 2
      src/views/xm/core/xmIteration/XmIterationSelect.vue
  3. 2
      src/views/xm/core/xmMenu/XmMenuMng.vue
  4. 2
      src/views/xm/core/xmMenu/XmMenuSelect.vue
  5. 45
      src/views/xm/core/xmProduct/XmProductMng.vue
  6. 41
      src/views/xm/core/xmProduct/XmProductSelect.vue
  7. 2
      src/views/xm/core/xmProject/XmProjectMng.vue
  8. 2
      src/views/xm/core/xmQuestion/XmQuestionMng.vue
  9. 2
      src/views/xm/core/xmTask/XmTaskMng.vue
  10. 2
      src/views/xm/core/xmTestCase/XmTestCaseMng.vue
  11. 2
      src/views/xm/core/xmTestCaseExec/XmTestCaseExecMng.vue

17
src/views/xm/core/xmIteration/XmIterationMng.vue

@ -1,10 +1,18 @@
<template> <template>
<section> <section>
<el-row class="app-container"> <el-row class="app-container">
<el-checkbox v-model="gstcVisible" >甘特图</el-checkbox>
<el-col style="display: contents;color: #606266;font-size: 14px;">上线时间:</el-col>
<el-checkbox v-model="gstcVisible" class="hidden-md-and-down">甘特图</el-checkbox>
<el-select v-model="filters.queryScope" placeholder="迭代查询范围">
<el-option :label="userInfo.branchName+'机构下所有的迭代'" value="branchId"></el-option>
<el-option label="我相关的迭代" value="compete"></el-option>
<el-option label="按迭代编号精确查找" value="iterationId"></el-option>
<el-option label="后台智能匹配" value=""></el-option>
</el-select>
<el-input v-if="filters.queryScope=='iterationId'" v-model="filters.id" style="width:20%;" placeholder="输入迭代编号" @keyup.enter.native="searchXmProducts"> </el-input>
<el-date-picker v-model="dateRangerOnline" type="daterange" align="right" unlink-panels range-separator="" <el-date-picker v-model="dateRangerOnline" type="daterange" align="right" unlink-panels range-separator=""
start-placeholder="开始日期" end-placeholder="完成日期" value-format="yyyy-MM-dd"
start-placeholder="上线日期" end-placeholder="上线日期" value-format="yyyy-MM-dd"
class="hidden-md-and-down"
:default-time="['00:00:00','23:59:59']" :picker-options="pickerOptions"> :default-time="['00:00:00','23:59:59']" :picker-options="pickerOptions">
</el-date-picker> </el-date-picker>
<el-input v-model="filters.key" style="width: 15%;" placeholder="模糊查询"> <el-input v-model="filters.key" style="width: 15%;" placeholder="模糊查询">
@ -55,6 +63,7 @@
</el-col> </el-col>
<el-col :span="24" style="padding-top:5px;"> <el-col :span="24" style="padding-top:5px;">
<el-button size="mini" type="primary" icon="el-icon-search" @click="getXmIterations">查询</el-button> <el-button size="mini" type="primary" icon="el-icon-search" @click="getXmIterations">查询</el-button>
<el-checkbox v-model="gstcVisible">甘特图</el-checkbox>
</el-col> </el-col>
</el-row> </el-row>
<el-button slot="reference" icon="el-icon-more" circle></el-button> <el-button slot="reference" icon="el-icon-more" circle></el-button>
@ -486,6 +495,6 @@
.more-label-font{ .more-label-font{
text-align:center; text-align:center;
float:left; float:left;
padding-top:10px;
padding-top:5px;
} }
</style> </style>

2
src/views/xm/core/xmIteration/XmIterationSelect.vue

@ -344,6 +344,6 @@
.more-label-font{ .more-label-font{
text-align:center; text-align:center;
float:left; float:left;
padding-top:10px;
padding-top:5px;
} }
</style> </style>

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

@ -1188,7 +1188,7 @@
.more-label-font{ .more-label-font{
text-align:center; text-align:center;
float:left; float:left;
padding-top:10px;
padding-top:5px;
} }
.el-table{ .el-table{
box-sizing: border-box; box-sizing: border-box;

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

@ -402,7 +402,7 @@
.more-label-font{ .more-label-font{
text-align:center; text-align:center;
float:left; float:left;
padding-top:10px;
padding-top:5px;
} }
.top{ .top{
margin-top:-30px; margin-top:-30px;

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

@ -76,6 +76,14 @@
<el-input size="mini" v-model="filters.key" style="width:100%;" placeholder="输入产品名字关键字"> <el-input size="mini" v-model="filters.key" style="width:100%;" placeholder="输入产品名字关键字">
</el-input> </el-input>
</el-col> </el-col>
<el-col :span="24" style="padding-top:5px;">
<font class="more-label-font">
产品经理:
</font>
<el-tag v-if="filters.pmUser" closable @click="selectFiltersPmUser" @close="clearFiltersPmUser()">{{filters.pmUser.username}}</el-tag>
<el-button size="mini" v-else @click="selectFiltersPmUser()">选责任人</el-button>
<el-button size="mini" @click="setFiltersPmUserAsMySelf()">我的</el-button>
</el-col>
<el-col :span="24" style="padding-top:5px;"> <el-col :span="24" style="padding-top:5px;">
<el-button type="primary" size="mini" @click="searchXmProducts" >查询</el-button> <el-button type="primary" size="mini" @click="searchXmProducts" >查询</el-button>
</el-col> </el-col>
@ -153,6 +161,10 @@
> >
<xm-iteration-mng :simple="true" :visible="iterationVisible" :product-id="editForm.id" ></xm-iteration-mng> <xm-iteration-mng :simple="true" :visible="iterationVisible" :product-id="editForm.id" ></xm-iteration-mng>
</el-dialog> </el-dialog>
<el-dialog title="选择员工" :visible.sync="selectFiltersPmUserVisible" width="60%" append-to-body>
<users-select @confirm="onFiltersPmUserSelected" ref="usersSelect"></users-select>
</el-dialog>
</section> </section>
</template> </template>
@ -168,6 +180,7 @@
import XmIterationMng from '../xmIteration/XmIterationSelect';// import XmIterationMng from '../xmIteration/XmIterationSelect';//
import XmProductStateMng from '../xmProductState/XmProductStateMng';// import XmProductStateMng from '../xmProductState/XmProductStateMng';//
import UsersSelect from "@/views/mdp/sys/user/UsersSelect";
export default { export default {
props:['selProject'], props:['selProject'],
@ -184,7 +197,8 @@
filters: { filters: {
key: '', key: '',
queryScope:'compete',//compete/branchId/''/productId queryScope:'compete',//compete/branchId/''/productId
id:'',//
id:'',//
pmUser:null,//
}, },
xmProducts: [],// xmProducts: [],//
pageInfo:{// pageInfo:{//
@ -212,6 +226,7 @@
}, },
iterationVisible:false, iterationVisible:false,
productStateVisible:false, productStateVisible:false,
selectFiltersPmUserVisible:false,
tableHeight:300, tableHeight:300,
dateRanger: [ dateRanger: [
util.formatDate.format(beginDate, "yyyy-MM-dd"), util.formatDate.format(beginDate, "yyyy-MM-dd"),
@ -311,6 +326,9 @@
if(this.selProject){ if(this.selProject){
params.projectId=this.selProject.id params.projectId=this.selProject.id
} }
if(this.filters.pmUser){
params.pmUserid=this.filters.pmUser.userid
}
this.load.list = true; this.load.list = true;
listXmProductWithState(params).then((res) => { listXmProductWithState(params).then((res) => {
var tips=res.data.tips; var tips=res.data.tips;
@ -419,8 +437,26 @@
}, },
/**begin 自定义函数请在下面加**/ /**begin 自定义函数请在下面加**/
clearFiltersPmUser:function(){
this.filters.pmUser=null;
this.searchXmProducts();
},
selectFiltersPmUser(){
this.selectFiltersPmUserVisible=true;
},
onFiltersPmUserSelected(users){
if(users && users.length>0){
this.filters.pmUser=users[0]
}else{
this.filters.pmUser=null;
}
this.selectFiltersPmUserVisible=false;
this.searchXmProducts();
},
setFiltersPmUserAsMySelf(){
this.filters.pmUser=this.userInfo;
this.searchXmProducts();
},
/**end 自定义函数请在上面加**/ /**end 自定义函数请在上面加**/
},//end methods },//end methods
@ -429,6 +465,7 @@
'xm-product-edit':XmProductEdit, 'xm-product-edit':XmProductEdit,
XmIterationMng, XmIterationMng,
XmProductStateMng, XmProductStateMng,
UsersSelect,
// //
}, },
mounted() { mounted() {
@ -449,6 +486,6 @@
.more-label-font{ .more-label-font{
text-align:center; text-align:center;
float:left; float:left;
padding-top:10px;
padding-top:5px;
} }
</style> </style>

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

@ -52,6 +52,14 @@
<el-input size="mini" v-model="filters.key" style="width:100%;" placeholder="输入产品名字关键字"> <el-input size="mini" v-model="filters.key" style="width:100%;" placeholder="输入产品名字关键字">
</el-input> </el-input>
</el-col> </el-col>
<el-col :span="24" style="padding-top:5px;">
<font class="more-label-font">
产品经理:
</font>
<el-tag v-if="filters.pmUser" closable @click="selectFiltersPmUser" @close="clearFiltersPmUser()">{{filters.pmUser.username}}</el-tag>
<el-button size="mini" v-else @click="selectFiltersPmUser()">选责任人</el-button>
<el-button size="mini" @click="setFiltersPmUserAsMySelf()">我的</el-button>
</el-col>
<el-col :span="24" style="padding-top:5px;"> <el-col :span="24" style="padding-top:5px;">
<el-button type="primary" size="mini" @click="searchXmProducts" >查询</el-button> <el-button type="primary" size="mini" @click="searchXmProducts" >查询</el-button>
</el-col> </el-col>
@ -71,6 +79,10 @@
</el-table> </el-table>
<el-pagination layout="total, prev, 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, prev, 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-dialog title="选择员工" :visible.sync="selectFiltersPmUserVisible" width="60%" append-to-body>
<users-select @confirm="onFiltersPmUserSelected" ref="usersSelect"></users-select>
</el-dialog>
</section> </section>
</template> </template>
@ -80,6 +92,7 @@
//import { listOption } from '@/api/mdp/meta/itemOption';// //import { listOption } from '@/api/mdp/meta/itemOption';//
import { listXmProductWithState } from '@/api/xm/core/xmProduct'; import { listXmProductWithState } from '@/api/xm/core/xmProduct';
import { mapGetters } from 'vuex' import { mapGetters } from 'vuex'
import UsersSelect from "@/views/mdp/sys/user/UsersSelect";
export default { export default {
@ -98,6 +111,7 @@
key: '', key: '',
queryScope:'compete', queryScope:'compete',
id:'',// id:'',//
pmUser:null,//
}, },
xmProducts: [],// xmProducts: [],//
pageInfo:{// pageInfo:{//
@ -125,6 +139,7 @@
}, },
iterationVisible:false, iterationVisible:false,
productStateVisible:false, productStateVisible:false,
selectFiltersPmUserVisible:false,
tableHeight:300, tableHeight:300,
dateRanger: [ dateRanger: [
util.formatDate.format(beginDate, "yyyy-MM-dd"), util.formatDate.format(beginDate, "yyyy-MM-dd"),
@ -234,10 +249,32 @@
selectedProduct:function(row){ selectedProduct:function(row){
this.$emit('selected',row); this.$emit('selected',row);
}, },
/**begin 自定义函数请在下面加**/
clearFiltersPmUser:function(){
this.filters.pmUser=null;
this.searchXmProducts();
},
selectFiltersPmUser(){
this.selectFiltersPmUserVisible=true;
},
onFiltersPmUserSelected(users){
if(users && users.length>0){
this.filters.pmUser=users[0]
}else{
this.filters.pmUser=null;
}
this.selectFiltersPmUserVisible=false;
this.searchXmProducts();
},
setFiltersPmUserAsMySelf(){
this.filters.pmUser=this.userInfo;
this.searchXmProducts();
},
},//end methods },//end methods
components: { components: {
UsersSelect,
// //
}, },
mounted() { mounted() {
@ -257,6 +294,6 @@
.more-label-font{ .more-label-font{
text-align:center; text-align:center;
float:left; float:left;
padding-top:10px;
padding-top:5px;
} }
</style> </style>

2
src/views/xm/core/xmProject/XmProjectMng.vue

@ -843,6 +843,6 @@
.more-label-font{ .more-label-font{
text-align:center; text-align:center;
float:left; float:left;
padding-top:10px;
padding-top:5px;
} }
</style> </style>

2
src/views/xm/core/xmQuestion/XmQuestionMng.vue

@ -893,6 +893,6 @@
.more-label-font{ .more-label-font{
text-align:center; text-align:center;
float:left; float:left;
padding-top:10px;
padding-top:5px;
} }
</style> </style>

2
src/views/xm/core/xmTask/XmTaskMng.vue

@ -1903,7 +1903,7 @@ small{
.more-label-font{ .more-label-font{
text-align:center; text-align:center;
float:left; float:left;
padding-top:10px;
padding-top:5px;
} }
</style> </style>
<style lang="scss" scoped> <style lang="scss" scoped>

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

@ -485,6 +485,6 @@
.more-label-font{ .more-label-font{
text-align:center; text-align:center;
float:left; float:left;
padding-top:10px;
padding-top:5px;
} }
</style> </style>

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

@ -792,6 +792,6 @@
.more-label-font{ .more-label-font{
text-align:center; text-align:center;
float:left; float:left;
padding-top:10px;
padding-top:5px;
} }
</style> </style>
Loading…
Cancel
Save