Browse Source

优化

master
陈裕财 3 years ago
parent
commit
b55c958bbd
  1. 2
      src/views/xm/rpt/CompsSet.vue
  2. 1
      src/views/xm/rpt/branch/branchWorkItemDayList.vue
  3. 2
      src/views/xm/rpt/branch/menuDayAccumulate.vue
  4. 2
      src/views/xm/rpt/branch/menuDayTrend.vue
  5. 2
      src/views/xm/rpt/branch/questionDayAccumulate.vue
  6. 2
      src/views/xm/rpt/branch/questionDayTrend.vue
  7. 2
      src/views/xm/rpt/iteration/IterationWorkItemDayList.vue
  8. 2
      src/views/xm/rpt/iteration/burnout.vue
  9. 2
      src/views/xm/rpt/iteration/menuDayAccumulate.vue
  10. 2
      src/views/xm/rpt/iteration/menuDayTrend.vue
  11. 2
      src/views/xm/rpt/iteration/questionDayAccumulate.vue
  12. 2
      src/views/xm/rpt/iteration/questionDayTrend.vue
  13. 2
      src/views/xm/rpt/product/menuAgeDist.vue
  14. 2
      src/views/xm/rpt/product/menuAttDist.vue
  15. 2
      src/views/xm/rpt/product/menuDayAccumulate.vue
  16. 2
      src/views/xm/rpt/product/menuDayTrend.vue
  17. 2
      src/views/xm/rpt/product/menuSort.vue
  18. 20
      src/views/xm/rpt/product/productWorkItemDayList.vue
  19. 29
      src/views/xm/rpt/product/questionAgeDist.vue
  20. 27
      src/views/xm/rpt/product/questionAttDist.vue
  21. 20
      src/views/xm/rpt/product/questionDayAccumulate.vue
  22. 20
      src/views/xm/rpt/product/questionDayTrend.vue
  23. 30
      src/views/xm/rpt/product/questionRetestDist.vue
  24. 26
      src/views/xm/rpt/product/questionSort.vue
  25. 2
      src/views/xm/rpt/project/projectWorkItemDayList.vue
  26. 2
      src/views/xm/rpt/project/projectWorkloadSetDayList.vue
  27. 2
      src/views/xm/rpt/project/projectWorkloadSetMonthList.vue
  28. 2
      src/views/xm/rpt/project/taskAgeDist.vue
  29. 2
      src/views/xm/rpt/project/taskAttDist.vue
  30. 2
      src/views/xm/rpt/project/taskDayAccumulate.vue
  31. 2
      src/views/xm/rpt/project/taskDayTrend.vue
  32. 2
      src/views/xm/rpt/project/taskSort.vue
  33. 2
      src/views/xm/rpt/reportIndex.vue
  34. 2
      src/views/xm/rpt/testCase/testCaseSort.vue
  35. 2
      src/views/xm/rpt/testPlan/testCaseToPlanCalc.vue
  36. 2
      src/views/xm/rpt/testPlan/testDayTimesCalc.vue
  37. 2
      src/views/xm/rpt/testPlan/testPlanCaseExecStatusDist.vue
  38. 2
      src/views/xm/rpt/testPlan/testPlanCaseUserDist.vue

2
src/views/xm/rpt/CompsSet.vue

@ -94,6 +94,8 @@ export default {
data() { data() {
return { return {
filterVisible:false,
filters:{ filters:{
category:'企业级' category:'企业级'
}, },

1
src/views/xm/rpt/branch/branchWorkItemDayList.vue

@ -102,6 +102,7 @@
}, },
data() { data() {
return { return {
filterVisible:false,
filters:{ filters:{
category:'', category:'',
product:null, product:null,

2
src/views/xm/rpt/branch/menuDayAccumulate.vue

@ -113,6 +113,8 @@
}, },
data() { data() {
return { return {
filterVisible:false,
filters:{ filters:{
category:'', category:'',
product:null, product:null,

2
src/views/xm/rpt/branch/menuDayTrend.vue

@ -103,6 +103,8 @@
}, },
data() { data() {
return { return {
filterVisible:false,
filters:{ filters:{
category:'', category:'',
product:null, product:null,

2
src/views/xm/rpt/branch/questionDayAccumulate.vue

@ -101,6 +101,8 @@
}, },
data() { data() {
return { return {
filterVisible:false,
filters:{ filters:{
category:'', category:'',
product:null, product:null,

2
src/views/xm/rpt/branch/questionDayTrend.vue

@ -103,6 +103,8 @@
}, },
data() { data() {
return { return {
filterVisible:false,
filters:{ filters:{
category:'', category:'',
product:null, product:null,

2
src/views/xm/rpt/iteration/IterationWorkItemDayList.vue

@ -109,6 +109,8 @@
}, },
data() { data() {
return { return {
filterVisible:false,
filters:{ filters:{
category:'', category:'',
product:null, product:null,

2
src/views/xm/rpt/iteration/burnout.vue

@ -141,6 +141,8 @@
}, },
data() { data() {
return { return {
filterVisible:false,
filters:{ filters:{
category:'', category:'',
product:null, product:null,

2
src/views/xm/rpt/iteration/menuDayAccumulate.vue

@ -136,6 +136,8 @@
}, },
data() { data() {
return { return {
filterVisible:false,
filters:{ filters:{
category:'', category:'',
product:null, product:null,

2
src/views/xm/rpt/iteration/menuDayTrend.vue

@ -138,6 +138,8 @@
}, },
data() { data() {
return { return {
filterVisible:false,
filters:{ filters:{
category:'', category:'',
product:null, product:null,

2
src/views/xm/rpt/iteration/questionDayAccumulate.vue

@ -133,6 +133,8 @@
}, },
data() { data() {
return { return {
filterVisible:false,
filters:{ filters:{
category:'', category:'',
product:null, product:null,

2
src/views/xm/rpt/iteration/questionDayTrend.vue

@ -137,6 +137,8 @@
}, },
data() { data() {
return { return {
filterVisible:false,
filters:{ filters:{
category:'', category:'',
product:null, product:null,

2
src/views/xm/rpt/product/menuAgeDist.vue

@ -148,6 +148,8 @@
}, },
data() { data() {
return { return {
filterVisible:false,
filters:{ filters:{
product:null, product:null,
project:null, project:null,

2
src/views/xm/rpt/product/menuAttDist.vue

@ -173,6 +173,8 @@
}, },
data() { data() {
return { return {
filterVisible:false,
filters:{ filters:{
product:null, product:null,
project:null, project:null,

2
src/views/xm/rpt/product/menuDayAccumulate.vue

@ -122,6 +122,8 @@
}, },
data() { data() {
return { return {
filterVisible:false,
filters:{ filters:{
category:'', category:'',
product:null, product:null,

2
src/views/xm/rpt/product/menuDayTrend.vue

@ -125,6 +125,8 @@
}, },
data() { data() {
return { return {
filterVisible:false,
filters:{ filters:{
category:'', category:'',
product:null, product:null,

2
src/views/xm/rpt/product/menuSort.vue

@ -138,6 +138,8 @@
}, },
data() { data() {
return { return {
filterVisible:false,
filters:{ filters:{
product:null, product:null,
project:null, project:null,

20
src/views/xm/rpt/product/productWorkItemDayList.vue

@ -7,9 +7,16 @@
<div class="echart-box" :id="this.id"></div> <div class="echart-box" :id="this.id"></div>
</div> </div>
</el-col> </el-col>
<el-col :span="6" class="border">
<el-form :model="params" class="padding" :style="{width:'100%',overflow: 'auto'}" ref="filtersRef">
<el-col :span="6" v-if="showParams">
<el-popover trigger="manual" v-model="filterVisible" style="float:right;" width="500">
<el-button slot="reference" style="margin-top:10px;" icon="el-icon-more" @click="filterVisible=!filterVisible"></el-button>
<el-row>
<el-button type="danger" icon="el-icon-delete" @click="doDelete">从报告移出该报表</el-button>
<el-button icon="el-icon-close" style="float:right;" @click="filterVisible=false">关闭</el-button>
</el-row>
<el-row>
<el-form :model="params" class="padding" :style="{width:'100%',overflow: 'auto'}" ref="filtersRef">
<el-form-item label="归属产品" > <el-form-item label="归属产品" >
<xm-product-select v-if="!xmProductCpd || !xmProductCpd.id" ref="xmProductSelect" style="display:inline;" :auto-select="false" :link-project-id="xmProject?xmProject.id:null" @row-click="onProductSelected" :iterationId="xmIteration?xmIteration.id:null" @clear="onProductClear"></xm-product-select> <xm-product-select v-if="!xmProductCpd || !xmProductCpd.id" ref="xmProductSelect" style="display:inline;" :auto-select="false" :link-project-id="xmProject?xmProject.id:null" @row-click="onProductSelected" :iterationId="xmIteration?xmIteration.id:null" @clear="onProductClear"></xm-product-select>
<span v-else>{{xmProductCpd.id}} <span v-if="xmProductCpd.productName"><br/>{{ xmProductCpd.productName }} </span> </span> <span v-else>{{xmProductCpd.id}} <span v-if="xmProductCpd.productName"><br/>{{ xmProductCpd.productName }} </span> </span>
@ -18,10 +25,15 @@
<br> <br>
<mdp-date-range v-model="filters" value-format="yyyy-MM-dd" start-key="startBizDate" end-key="endBizDate"></mdp-date-range> <mdp-date-range v-model="filters" value-format="yyyy-MM-dd" start-key="startBizDate" end-key="endBizDate"></mdp-date-range>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button type="primary" icon="el-icon-search" @click="listXmProductStateHis">查询</el-button>
<el-button type="primary" style="float:right;" icon="el-icon-search" @click="listXmProductStateHis">查询</el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
</el-row>
</el-popover>
</el-col> </el-col>
</el-row> </el-row>
</section> </section>
@ -98,6 +110,8 @@
}, },
data() { data() {
return { return {
filterVisible:false,
filters:{ filters:{
product:null, product:null,
project:null, project:null,

29
src/views/xm/rpt/product/questionAgeDist.vue

@ -7,12 +7,27 @@
<div class="progress"></div> <div class="progress"></div>
</div> </div>
</el-col> </el-col>
<el-col :span="6" class="border">
<el-col :span="6" v-if="showParams">
<el-popover trigger="manual" v-model="filterVisible" style="float:right;" width="500">
<el-button slot="reference" style="margin-top:10px;" icon="el-icon-more" @click="filterVisible=!filterVisible"></el-button>
<el-row>
<el-button type="danger" icon="el-icon-delete" @click="doDelete">从报告移出该报表</el-button>
<el-button icon="el-icon-close" style="float:right;" @click="filterVisible=false">关闭</el-button>
</el-row>
<el-row>
<el-form :model="params" class="padding" :style="{width:'100%',overflow: 'auto'}" ref="filtersRef"> <el-form :model="params" class="padding" :style="{width:'100%',overflow: 'auto'}" ref="filtersRef">
<el-row>
<el-col :span="15">
<el-form-item label="分组属性">
<el-select style="width:100px;" size="small" v-model="params.groupBy" @change="onXmQuestionSomeFieldsChange('groupBy',$event)">
<el-option v-for="i in this.groupBys" :label="i.name" :key="i.id" :value="i.id"></el-option>
</el-select>
</el-form-item>
<el-form-item label="测试库" v-if="xmTestCasedb && xmTestCasedb.id" > <el-form-item label="测试库" v-if="xmTestCasedb && xmTestCasedb.id" >
<span >{{xmTestCasedb.id}} <span v-if="xmTestCasedb.name"><br/>{{ xmTestCasedb.name }} </span> </span> <span >{{xmTestCasedb.id}} <span v-if="xmTestCasedb.name"><br/>{{ xmTestCasedb.name }} </span> </span>
</el-form-item> </el-form-item>
<el-form-item label="归属项目"> <el-form-item label="归属项目">
<xm-project-select v-if="!xmProject" ref="xmProjectSelect" style="display:inline;" :auto-select="false" :link-product-id="xmProductCpd?xmProductCpd.id:null" @row-click="onProjectSelected" @clear="onProjectClear"></xm-project-select> <xm-project-select v-if="!xmProject" ref="xmProjectSelect" style="display:inline;" :auto-select="false" :link-product-id="xmProductCpd?xmProductCpd.id:null" @row-click="onProjectSelected" @clear="onProjectClear"></xm-project-select>
<span v-else>{{xmProject.id}} <span v-if="xmProject.name"><br/>{{ xmProject.name }} </span> </span> <span v-else>{{xmProject.id}} <span v-if="xmProject.name"><br/>{{ xmProject.name }} </span> </span>
@ -39,6 +54,8 @@
<el-button v-if="filters.testPlan" type="text" @click="filters.testPlan=null" plain icon="el-icon-circle-close">清除</el-button> <el-button v-if="filters.testPlan" type="text" @click="filters.testPlan=null" plain icon="el-icon-circle-close">清除</el-button>
<el-button v-if="!filters.testPlan" type="text" @click="$refs['xmTestPlanSelectRef'].open()" plain>选择计划</el-button> <el-button v-if="!filters.testPlan" type="text" @click="$refs['xmTestPlanSelectRef'].open()" plain>选择计划</el-button>
</el-form-item> </el-form-item>
</el-col>
<el-col :span="9">
<el-form-item label="缺陷状态" prop="bugStatus"> <el-form-item label="缺陷状态" prop="bugStatus">
<el-select style="width:100px;" size="small" v-model="params.bugStatus" @change="onXmQuestionSomeFieldsChange('bugStatus',$event)" clearable> <el-select style="width:100px;" size="small" v-model="params.bugStatus" @change="onXmQuestionSomeFieldsChange('bugStatus',$event)" clearable>
<el-option v-for="i in this.dicts.bugStatus" :label="i.name" :key="i.id" :value="i.id"></el-option> <el-option v-for="i in this.dicts.bugStatus" :label="i.name" :key="i.id" :value="i.id"></el-option>
@ -75,11 +92,17 @@
<el-option v-for="i in dicts.bugRepRate" :label="i.name" :key="i.id" :value="i.id"></el-option> <el-option v-for="i in dicts.bugRepRate" :label="i.name" :key="i.id" :value="i.id"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col>
</el-row>
<el-form-item> <el-form-item>
<el-button type="primary" icon="el-icon-search" @click="searchXmQuestionAgeDist">查询</el-button>
<el-button type="primary" style="float:right;" icon="el-icon-search" @click="searchXmQuestionAgeDist">查询</el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
</el-row>
</el-popover>
</el-col> </el-col>
</el-row> </el-row>
<xm-test-plan-select ref="xmTestPlanSelectRef" :casedb-id="xmTestCasedb?xmTestCasedb.id:null" :product-id="xmProduct?xmProduct.id:null" :project-id="xmProject?xmProject.id:null" placeholder="迭代" @select="onXmTestPlanSelected" @clear="onXmTestPlanClear"></xm-test-plan-select > <xm-test-plan-select ref="xmTestPlanSelectRef" :casedb-id="xmTestCasedb?xmTestCasedb.id:null" :product-id="xmProduct?xmProduct.id:null" :project-id="xmProject?xmProject.id:null" placeholder="迭代" @select="onXmTestPlanSelected" @clear="onXmTestPlanClear"></xm-test-plan-select >
@ -178,6 +201,8 @@
}, },
data() { data() {
return { return {
filterVisible:false,
filters:{ filters:{
product:null, product:null,
project:null, project:null,

27
src/views/xm/rpt/product/questionAttDist.vue

@ -7,10 +7,19 @@
<div class="progress"></div> <div class="progress"></div>
</div> </div>
</el-col> </el-col>
<el-col :span="6" class="border">
<el-col :span="6" v-if="showParams">
<el-popover trigger="manual" v-model="filterVisible" style="float:right;" width="500">
<el-button slot="reference" style="margin-top:10px;" icon="el-icon-more" @click="filterVisible=!filterVisible"></el-button>
<el-row>
<el-button type="danger" icon="el-icon-delete" @click="doDelete">从报告移出该报表</el-button>
<el-button icon="el-icon-close" style="float:right;" @click="filterVisible=false">关闭</el-button>
</el-row>
<el-row>
<el-form :model="params" class="padding" :style="{width:'100%',overflow: 'auto'}" ref="filtersRef"> <el-form :model="params" class="padding" :style="{width:'100%',overflow: 'auto'}" ref="filtersRef">
<el-row>
<el-col :span="15">
<el-form-item label="分组属性"> <el-form-item label="分组属性">
<el-select style="width:100px;" size="small" v-model="params.groupBy" @change="onXmQuestionSomeFieldsChange('groupBy',$event)" clearable>
<el-select style="width:100px;" size="small" v-model="params.groupBy" @change="onXmQuestionSomeFieldsChange('groupBy',$event)">
<el-option v-for="i in this.groupBys" :label="i.name" :key="i.id" :value="i.id"></el-option> <el-option v-for="i in this.groupBys" :label="i.name" :key="i.id" :value="i.id"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
@ -18,6 +27,7 @@
<el-form-item label="测试库" v-if="xmTestCasedb && xmTestCasedb.id" > <el-form-item label="测试库" v-if="xmTestCasedb && xmTestCasedb.id" >
<span >{{xmTestCasedb.id}} <span v-if="xmTestCasedb.name"><br/>{{ xmTestCasedb.name }} </span> </span> <span >{{xmTestCasedb.id}} <span v-if="xmTestCasedb.name"><br/>{{ xmTestCasedb.name }} </span> </span>
</el-form-item> </el-form-item>
<el-form-item label="归属项目"> <el-form-item label="归属项目">
<xm-project-select v-if="!xmProject" ref="xmProjectSelect" style="display:inline;" :auto-select="false" :link-product-id="xmProductCpd?xmProductCpd.id:null" @row-click="onProjectSelected" @clear="onProjectClear"></xm-project-select> <xm-project-select v-if="!xmProject" ref="xmProjectSelect" style="display:inline;" :auto-select="false" :link-product-id="xmProductCpd?xmProductCpd.id:null" @row-click="onProjectSelected" @clear="onProjectClear"></xm-project-select>
<span v-else>{{xmProject.id}} <span v-if="xmProject.name"><br/>{{ xmProject.name }} </span> </span> <span v-else>{{xmProject.id}} <span v-if="xmProject.name"><br/>{{ xmProject.name }} </span> </span>
@ -44,6 +54,8 @@
<el-button v-if="filters.testPlan" type="text" @click="filters.testPlan=null" plain icon="el-icon-circle-close">清除</el-button> <el-button v-if="filters.testPlan" type="text" @click="filters.testPlan=null" plain icon="el-icon-circle-close">清除</el-button>
<el-button v-if="!filters.testPlan" type="text" @click="$refs['xmTestPlanSelectRef'].open()" plain>选择计划</el-button> <el-button v-if="!filters.testPlan" type="text" @click="$refs['xmTestPlanSelectRef'].open()" plain>选择计划</el-button>
</el-form-item> </el-form-item>
</el-col>
<el-col :span="9">
<el-form-item label="缺陷状态" prop="bugStatus"> <el-form-item label="缺陷状态" prop="bugStatus">
<el-select style="width:100px;" size="small" v-model="params.bugStatus" @change="onXmQuestionSomeFieldsChange('bugStatus',$event)" clearable> <el-select style="width:100px;" size="small" v-model="params.bugStatus" @change="onXmQuestionSomeFieldsChange('bugStatus',$event)" clearable>
<el-option v-for="i in this.dicts.bugStatus" :label="i.name" :key="i.id" :value="i.id"></el-option> <el-option v-for="i in this.dicts.bugStatus" :label="i.name" :key="i.id" :value="i.id"></el-option>
@ -80,10 +92,17 @@
<el-option v-for="i in dicts.bugRepRate" :label="i.name" :key="i.id" :value="i.id"></el-option> <el-option v-for="i in dicts.bugRepRate" :label="i.name" :key="i.id" :value="i.id"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col>
</el-row>
<el-form-item> <el-form-item>
<el-button type="primary" icon="el-icon-search" @click="searchXmQuestionAttDist">查询</el-button>
<el-button type="primary" style="float:right;" icon="el-icon-search" @click="searchXmQuestionAttDist">查询</el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
</el-row>
</el-popover>
</el-col> </el-col>
</el-row> </el-row>
<xm-test-plan-select ref="xmTestPlanSelectRef" :casedb-id="xmTestCasedb?xmTestCasedb.id:null" :product-id="xmProduct?xmProduct.id:null" :project-id="xmProject?xmProject.id:null" placeholder="迭代" @select="onXmTestPlanSelected" @clear="onXmTestPlanClear"></xm-test-plan-select > <xm-test-plan-select ref="xmTestPlanSelectRef" :casedb-id="xmTestCasedb?xmTestCasedb.id:null" :product-id="xmProduct?xmProduct.id:null" :project-id="xmProject?xmProject.id:null" placeholder="迭代" @select="onXmTestPlanSelected" @clear="onXmTestPlanClear"></xm-test-plan-select >
@ -214,6 +233,8 @@
}, },
data() { data() {
return { return {
filterVisible:false,
filters:{ filters:{
product:null, product:null,
project:null, project:null,

20
src/views/xm/rpt/product/questionDayAccumulate.vue

@ -6,9 +6,16 @@
<div class="echart-box" :id="this.id"></div> <div class="echart-box" :id="this.id"></div>
</div> </div>
</el-col> </el-col>
<el-col :span="6" class="border">
<el-form :model="params" class="padding" :style="{width:'100%',overflow: 'auto'}" ref="filtersRef">
<el-col :span="6" v-if="showParams">
<el-popover trigger="manual" v-model="filterVisible" style="float:right;" width="500">
<el-button slot="reference" style="margin-top:10px;" icon="el-icon-more" @click="filterVisible=!filterVisible"></el-button>
<el-row>
<el-button type="danger" icon="el-icon-delete" @click="doDelete">从报告移出该报表</el-button>
<el-button icon="el-icon-close" style="float:right;" @click="filterVisible=false">关闭</el-button>
</el-row>
<el-row>
<el-form :model="params" class="padding" :style="{width:'100%',overflow: 'auto'}" ref="filtersRef">
<el-form-item label="归属产品" > <el-form-item label="归属产品" >
<xm-product-select v-if="!xmProductCpd || !xmProductCpd.id" ref="xmProductSelect" style="display:inline;" :auto-select="false" :link-project-id="xmProject?xmProject.id:null" @row-click="onProductSelected" :iterationId="xmIteration?xmIteration.id:null" @clear="onProductClear"></xm-product-select> <xm-product-select v-if="!xmProductCpd || !xmProductCpd.id" ref="xmProductSelect" style="display:inline;" :auto-select="false" :link-project-id="xmProject?xmProject.id:null" @row-click="onProductSelected" :iterationId="xmIteration?xmIteration.id:null" @clear="onProductClear"></xm-product-select>
<span v-else>{{xmProductCpd.id}} <span v-if="xmProductCpd.productName"><br/>{{ xmProductCpd.productName }} </span> </span> <span v-else>{{xmProductCpd.id}} <span v-if="xmProductCpd.productName"><br/>{{ xmProductCpd.productName }} </span> </span>
@ -17,10 +24,15 @@
<br> <br>
<mdp-date-range v-model="filters" value-format="yyyy-MM-dd" start-key="startBizDate" end-key="endBizDate"></mdp-date-range> <mdp-date-range v-model="filters" value-format="yyyy-MM-dd" start-key="startBizDate" end-key="endBizDate"></mdp-date-range>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button type="primary" icon="el-icon-search" @click="listXmProductStateHis">查询</el-button>
<el-button type="primary" style="float:right;" icon="el-icon-search" @click="listXmProductStateHis">查询</el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
</el-row>
</el-popover>
</el-col> </el-col>
</el-row> </el-row>
</section> </section>
@ -124,6 +136,8 @@
}, },
data() { data() {
return { return {
filterVisible:false,
filters:{ filters:{
category:'', category:'',
product:null, product:null,

20
src/views/xm/rpt/product/questionDayTrend.vue

@ -8,9 +8,16 @@
<div class="progress"></div> <div class="progress"></div>
</div> </div>
</el-col> </el-col>
<el-col :span="6" class="border">
<el-form :model="params" class="padding" :style="{width:'100%',overflow: 'auto'}" ref="filtersRef">
<el-col :span="6" v-if="showParams">
<el-popover trigger="manual" v-model="filterVisible" style="float:right;" width="500">
<el-button slot="reference" style="margin-top:10px;" icon="el-icon-more" @click="filterVisible=!filterVisible"></el-button>
<el-row>
<el-button type="danger" icon="el-icon-delete" @click="doDelete">从报告移出该报表</el-button>
<el-button icon="el-icon-close" style="float:right;" @click="filterVisible=false">关闭</el-button>
</el-row>
<el-row>
<el-form :model="params" class="padding" :style="{width:'100%',overflow: 'auto'}" ref="filtersRef">
<el-form-item label="归属产品" > <el-form-item label="归属产品" >
<xm-product-select v-if="!xmProductCpd || !xmProductCpd.id" ref="xmProductSelect" style="display:inline;" :auto-select="false" :link-project-id="xmProject?xmProject.id:null" @row-click="onProductSelected" :iterationId="xmIteration?xmIteration.id:null" @clear="onProductClear"></xm-product-select> <xm-product-select v-if="!xmProductCpd || !xmProductCpd.id" ref="xmProductSelect" style="display:inline;" :auto-select="false" :link-project-id="xmProject?xmProject.id:null" @row-click="onProductSelected" :iterationId="xmIteration?xmIteration.id:null" @clear="onProductClear"></xm-product-select>
<span v-else>{{xmProductCpd.id}} <span v-if="xmProductCpd.productName"><br/>{{ xmProductCpd.productName }} </span> </span> <span v-else>{{xmProductCpd.id}} <span v-if="xmProductCpd.productName"><br/>{{ xmProductCpd.productName }} </span> </span>
@ -19,10 +26,15 @@
<br> <br>
<mdp-date-range v-model="filters" value-format="yyyy-MM-dd" start-key="startBizDate" end-key="endBizDate"></mdp-date-range> <mdp-date-range v-model="filters" value-format="yyyy-MM-dd" start-key="startBizDate" end-key="endBizDate"></mdp-date-range>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button type="primary" icon="el-icon-search" @click="listXmProductStateHis">查询</el-button>
<el-button type="primary" style="float:right;" icon="el-icon-search" @click="listXmProductStateHis">查询</el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
</el-row>
</el-popover>
</el-col> </el-col>
</el-row> </el-row>
</section> </section>
@ -126,6 +138,8 @@
}, },
data() { data() {
return { return {
filterVisible:false,
filters:{ filters:{
product:null, product:null,
project:null, project:null,

30
src/views/xm/rpt/product/questionRetestDist.vue

@ -7,12 +7,27 @@
<div class="progress"></div> <div class="progress"></div>
</div> </div>
</el-col> </el-col>
<el-col :span="6" class="border">
<el-col :span="6" v-if="showParams">
<el-popover trigger="manual" v-model="filterVisible" style="float:right;" width="500">
<el-button slot="reference" style="margin-top:10px;" icon="el-icon-more" @click="filterVisible=!filterVisible"></el-button>
<el-row>
<el-button type="danger" icon="el-icon-delete" @click="doDelete">从报告移出该报表</el-button>
<el-button icon="el-icon-close" style="float:right;" @click="filterVisible=false">关闭</el-button>
</el-row>
<el-row>
<el-form :model="params" class="padding" :style="{width:'100%',overflow: 'auto'}" ref="filtersRef"> <el-form :model="params" class="padding" :style="{width:'100%',overflow: 'auto'}" ref="filtersRef">
<el-row>
<el-col :span="15">
<el-form-item label="分组属性">
<el-select style="width:100px;" size="small" v-model="params.groupBy" @change="onXmQuestionSomeFieldsChange('groupBy',$event)">
<el-option v-for="i in this.groupBys" :label="i.name" :key="i.id" :value="i.id"></el-option>
</el-select>
</el-form-item>
<el-form-item label="测试库" v-if="xmTestCasedb && xmTestCasedb.id" > <el-form-item label="测试库" v-if="xmTestCasedb && xmTestCasedb.id" >
<span >{{xmTestCasedb.id}} <span v-if="xmTestCasedb.name"><br/>{{ xmTestCasedb.name }} </span> </span> <span >{{xmTestCasedb.id}} <span v-if="xmTestCasedb.name"><br/>{{ xmTestCasedb.name }} </span> </span>
</el-form-item> </el-form-item>
<el-form-item label="归属项目"> <el-form-item label="归属项目">
<xm-project-select v-if="!xmProject" ref="xmProjectSelect" style="display:inline;" :auto-select="false" :link-product-id="xmProductCpd?xmProductCpd.id:null" @row-click="onProjectSelected" @clear="onProjectClear"></xm-project-select> <xm-project-select v-if="!xmProject" ref="xmProjectSelect" style="display:inline;" :auto-select="false" :link-product-id="xmProductCpd?xmProductCpd.id:null" @row-click="onProjectSelected" @clear="onProjectClear"></xm-project-select>
<span v-else>{{xmProject.id}} <span v-if="xmProject.name"><br/>{{ xmProject.name }} </span> </span> <span v-else>{{xmProject.id}} <span v-if="xmProject.name"><br/>{{ xmProject.name }} </span> </span>
@ -39,6 +54,8 @@
<el-button v-if="filters.testPlan" type="text" @click="filters.testPlan=null" plain icon="el-icon-circle-close">清除</el-button> <el-button v-if="filters.testPlan" type="text" @click="filters.testPlan=null" plain icon="el-icon-circle-close">清除</el-button>
<el-button v-if="!filters.testPlan" type="text" @click="$refs['xmTestPlanSelectRef'].open()" plain>选择计划</el-button> <el-button v-if="!filters.testPlan" type="text" @click="$refs['xmTestPlanSelectRef'].open()" plain>选择计划</el-button>
</el-form-item> </el-form-item>
</el-col>
<el-col :span="9">
<el-form-item label="缺陷状态" prop="bugStatus"> <el-form-item label="缺陷状态" prop="bugStatus">
<el-select style="width:100px;" size="small" v-model="params.bugStatus" @change="onXmQuestionSomeFieldsChange('bugStatus',$event)" clearable> <el-select style="width:100px;" size="small" v-model="params.bugStatus" @change="onXmQuestionSomeFieldsChange('bugStatus',$event)" clearable>
<el-option v-for="i in this.dicts.bugStatus" :label="i.name" :key="i.id" :value="i.id"></el-option> <el-option v-for="i in this.dicts.bugStatus" :label="i.name" :key="i.id" :value="i.id"></el-option>
@ -75,10 +92,17 @@
<el-option v-for="i in dicts.bugRepRate" :label="i.name" :key="i.id" :value="i.id"></el-option> <el-option v-for="i in dicts.bugRepRate" :label="i.name" :key="i.id" :value="i.id"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col>
</el-row>
<el-form-item> <el-form-item>
<el-button type="primary" icon="el-icon-search" @click="searchXmQuestionRetestDist">查询</el-button>
<el-button type="primary" style="float:right;" icon="el-icon-search" @click="searchXmQuestionRetestDist">查询</el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
</el-row>
</el-popover>
</el-col> </el-col>
</el-row> </el-row>
<xm-test-plan-select ref="xmTestPlanSelectRef" :casedb-id="xmTestCasedb?xmTestCasedb.id:null" :product-id="xmProduct?xmProduct.id:null" :project-id="xmProject?xmProject.id:null" placeholder="迭代" @select="onXmTestPlanSelected" @clear="onXmTestPlanClear"></xm-test-plan-select > <xm-test-plan-select ref="xmTestPlanSelectRef" :casedb-id="xmTestCasedb?xmTestCasedb.id:null" :product-id="xmProduct?xmProduct.id:null" :project-id="xmProject?xmProject.id:null" placeholder="迭代" @select="onXmTestPlanSelected" @clear="onXmTestPlanClear"></xm-test-plan-select >
@ -196,6 +220,8 @@
}, },
data() { data() {
return { return {
filterVisible:false,
filters:{ filters:{
product:null, product:null,
project:null, project:null,

26
src/views/xm/rpt/product/questionSort.vue

@ -7,8 +7,17 @@
<div class="progress"></div> <div class="progress"></div>
</div> </div>
</el-col> </el-col>
<el-col :span="6" class="border" v-show="isRptCfg">
<el-col :span="6" v-if="showParams">
<el-popover trigger="manual" v-model="filterVisible" style="float:right;" width="500">
<el-button slot="reference" style="margin-top:10px;" icon="el-icon-more" @click="filterVisible=!filterVisible"></el-button>
<el-row>
<el-button type="danger" icon="el-icon-delete" @click="doDelete">从报告移出该报表</el-button>
<el-button icon="el-icon-close" style="float:right;" @click="filterVisible=false">关闭</el-button>
</el-row>
<el-row>
<el-form :model="params" class="padding" :style="{width:'100%',overflow: 'auto'}" ref="filtersRef"> <el-form :model="params" class="padding" :style="{width:'100%',overflow: 'auto'}" ref="filtersRef">
<el-row>
<el-col :span="15">
<el-form-item label="分组属性"> <el-form-item label="分组属性">
<el-select style="width:100px;" size="small" v-model="params.groupBy" @change="onXmQuestionSomeFieldsChange('groupBy',$event)"> <el-select style="width:100px;" size="small" v-model="params.groupBy" @change="onXmQuestionSomeFieldsChange('groupBy',$event)">
<el-option v-for="i in this.groupBys" :label="i.name" :key="i.id" :value="i.id"></el-option> <el-option v-for="i in this.groupBys" :label="i.name" :key="i.id" :value="i.id"></el-option>
@ -45,6 +54,8 @@
<el-button v-if="filters.testPlan" type="text" @click="filters.testPlan=null" plain icon="el-icon-circle-close">清除</el-button> <el-button v-if="filters.testPlan" type="text" @click="filters.testPlan=null" plain icon="el-icon-circle-close">清除</el-button>
<el-button v-if="!filters.testPlan" type="text" @click="$refs['xmTestPlanSelectRef'].open()" plain>选择计划</el-button> <el-button v-if="!filters.testPlan" type="text" @click="$refs['xmTestPlanSelectRef'].open()" plain>选择计划</el-button>
</el-form-item> </el-form-item>
</el-col>
<el-col :span="9">
<el-form-item label="缺陷状态" prop="bugStatus"> <el-form-item label="缺陷状态" prop="bugStatus">
<el-select style="width:100px;" size="small" v-model="params.bugStatus" @change="onXmQuestionSomeFieldsChange('bugStatus',$event)" clearable> <el-select style="width:100px;" size="small" v-model="params.bugStatus" @change="onXmQuestionSomeFieldsChange('bugStatus',$event)" clearable>
<el-option v-for="i in this.dicts.bugStatus" :label="i.name" :key="i.id" :value="i.id"></el-option> <el-option v-for="i in this.dicts.bugStatus" :label="i.name" :key="i.id" :value="i.id"></el-option>
@ -81,10 +92,17 @@
<el-option v-for="i in dicts.bugRepRate" :label="i.name" :key="i.id" :value="i.id"></el-option> <el-option v-for="i in dicts.bugRepRate" :label="i.name" :key="i.id" :value="i.id"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col>
</el-row>
<el-form-item> <el-form-item>
<el-button type="primary" icon="el-icon-search" @click="searchXmQuestionSort">查询</el-button>
<el-button type="primary" style="float:right;" icon="el-icon-search" @click="searchXmQuestionSort">查询</el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
</el-row>
</el-popover>
</el-col> </el-col>
</el-row> </el-row>
<xm-test-plan-select ref="xmTestPlanSelectRef" :casedb-id="xmTestCasedb?xmTestCasedb.id:null" :product-id="xmProduct?xmProduct.id:null" :project-id="xmProject?xmProject.id:null" placeholder="迭代" @select="onXmTestPlanSelected" @clear="onXmTestPlanClear"></xm-test-plan-select > <xm-test-plan-select ref="xmTestPlanSelectRef" :casedb-id="xmTestCasedb?xmTestCasedb.id:null" :product-id="xmProduct?xmProduct.id:null" :project-id="xmProject?xmProject.id:null" placeholder="迭代" @select="onXmTestPlanSelected" @clear="onXmTestPlanClear"></xm-test-plan-select >
@ -178,6 +196,8 @@
}, },
data() { data() {
return { return {
filterVisible:false,
filters:{ filters:{
product:null, product:null,
project:null, project:null,
@ -213,6 +233,7 @@
orderFields: ["value"], // ['sex','student_id'] orderFields: ["value"], // ['sex','student_id']
orderDirs: ["desc"], // asc,desc ['asc','desc'] orderDirs: ["desc"], // asc,desc ['asc','desc']
}, },
filterVisible:false,
}//end return }//end return
},//end data },//end data
@ -274,7 +295,6 @@
toolbox: { toolbox: {
show: true, show: true,
top:"5%", top:"5%",
top:"5%",
right:"10px", right:"10px",
feature: { feature: {
dataView: { show: true, readOnly: false }, dataView: { show: true, readOnly: false },

2
src/views/xm/rpt/project/projectWorkItemDayList.vue

@ -92,6 +92,8 @@
}, },
data() { data() {
return { return {
filterVisible:false,
filters:{ filters:{
product:null, product:null,

2
src/views/xm/rpt/project/projectWorkloadSetDayList.vue

@ -103,6 +103,8 @@
}, },
data() { data() {
return { return {
filterVisible:false,
filters:{ filters:{
product:null, product:null,

2
src/views/xm/rpt/project/projectWorkloadSetMonthList.vue

@ -103,6 +103,8 @@
}, },
data() { data() {
return { return {
filterVisible:false,
filters:{ filters:{
product:null, product:null,

2
src/views/xm/rpt/project/taskAgeDist.vue

@ -126,6 +126,8 @@
}, },
data() { data() {
return { return {
filterVisible:false,
filters:{ filters:{
product:null, product:null,
project:null, project:null,

2
src/views/xm/rpt/project/taskAttDist.vue

@ -156,6 +156,8 @@
}, },
data() { data() {
return { return {
filterVisible:false,
filters:{ filters:{
product:null, product:null,
project:null, project:null,

2
src/views/xm/rpt/project/taskDayAccumulate.vue

@ -131,6 +131,8 @@
}, },
data() { data() {
return { return {
filterVisible:false,
filters:{ filters:{
product:null, product:null,
project:null, project:null,

2
src/views/xm/rpt/project/taskDayTrend.vue

@ -125,6 +125,8 @@
}, },
data() { data() {
return { return {
filterVisible:false,
filters:{ filters:{
product:null, product:null,
project:null, project:null,

2
src/views/xm/rpt/project/taskSort.vue

@ -121,6 +121,8 @@
}, },
data() { data() {
return { return {
filterVisible:false,
filters:{ filters:{
product:null, product:null,
project:null, project:null,

2
src/views/xm/rpt/reportIndex.vue

@ -215,6 +215,8 @@
}, },
data() { data() {
return { return {
filterVisible:false,
filters:{ filters:{
category:'项目级', category:'项目级',
}, },

2
src/views/xm/rpt/testCase/testCaseSort.vue

@ -144,6 +144,8 @@
}, },
data() { data() {
return { return {
filterVisible:false,
filters:{ filters:{
product:null, product:null,
project:null, project:null,

2
src/views/xm/rpt/testPlan/testCaseToPlanCalc.vue

@ -154,6 +154,8 @@
}, },
data() { data() {
return { return {
filterVisible:false,
filters:{ filters:{
product:null, product:null,
project:null, project:null,

2
src/views/xm/rpt/testPlan/testDayTimesCalc.vue

@ -135,6 +135,8 @@
}, },
data() { data() {
return { return {
filterVisible:false,
filters:{ filters:{
category:'', category:'',
product:null, product:null,

2
src/views/xm/rpt/testPlan/testPlanCaseExecStatusDist.vue

@ -146,6 +146,8 @@
}, },
data() { data() {
return { return {
filterVisible:false,
filters:{ filters:{
product:null, product:null,
project:null, project:null,

2
src/views/xm/rpt/testPlan/testPlanCaseUserDist.vue

@ -155,6 +155,8 @@
}, },
data() { data() {
return { return {
filterVisible:false,
filters:{ filters:{
product:null, product:null,
project:null, project:null,

Loading…
Cancel
Save