Browse Source

优化

master
陈裕财 3 years ago
parent
commit
0147cff980
  1. 4
      src/views/xm/core/xmIteration/XmIterationForLinkComplex.vue
  2. 4
      src/views/xm/core/xmProduct/XmProductForLinkComplex.vue
  3. 4
      src/views/xm/core/xmProject/XmProjectForLinkComplex.vue
  4. 7
      src/views/xm/rpt/product/menuSort.vue
  5. 2
      src/views/xm/rpt/product/questionSort.vue
  6. 14
      src/views/xm/rpt/reportIndex.vue
  7. 4
      src/views/xm/rpt/testCase/testCaseSort.vue
  8. 2
      src/views/xm/rpt/testPlan/testCaseToPlanCalc.vue
  9. 2
      src/views/xm/rpt/testPlan/testDayTimesCalc.vue
  10. 2
      src/views/xm/rpt/testPlan/testPlanCaseExecStatusDist.vue
  11. 2
      src/views/xm/rpt/testPlan/testPlanCaseUserDist.vue

4
src/views/xm/core/xmIteration/XmIterationForLinkComplex.vue

@ -6,8 +6,8 @@
<el-row> <el-row>
<xm-iteration-select ref="xmIterationSelect" :auto-select="true" :link-project-id="projectInfo?projectInfo.id:null" :product-id="xmProduct?xmProduct.id:null" @row-click="onIterationRowClick" @clear="onIterationClearSelect"> <xm-iteration-select ref="xmIterationSelect" :auto-select="true" :link-project-id="projectInfo?projectInfo.id:null" :product-id="xmProduct?xmProduct.id:null" @row-click="onIterationRowClick" @clear="onIterationClearSelect">
<template v-slot:title="{iteration}"> <template v-slot:title="{iteration}">
<h4 href="#"><div class="lg-text hidden-md-and-down"><i style="font-size:16px;" class="el-icon-sort"></i> {{iteration?iteration.iterationName:'请选择一个迭代'}}</div></h4>
<h4 href="#"><div class="sm-text hidden-lg-and-up"><i style="font-size:16px;" class="el-icon-sort"></i> {{iteration?iteration.iterationName:'请选择一个迭代'}}</div></h4>
<h4 href="#"><div class="lg-text hidden-md-and-down"><i style="font-size:16px;" class="el-icon-sort"></i> {{iteration&&iteration.id?iteration.iterationName:'请选择一个迭代'}}</div></h4>
<h4 href="#"><div class="sm-text hidden-lg-and-up"><i style="font-size:16px;" class="el-icon-sort"></i> {{iteration&&iteration.id?iteration.iterationName:'请选择一个迭代'}}</div></h4>
</template> </template>
</xm-iteration-select> </xm-iteration-select>
</el-row> </el-row>

4
src/views/xm/core/xmProduct/XmProductForLinkComplex.vue

@ -13,8 +13,8 @@
@clear="onProductClearSelect" @clear="onProductClearSelect"
> >
<template v-slot:title="{product}"> <template v-slot:title="{product}">
<h4 href="#"><div class="lg-text hidden-md-and-down"><i style="font-size:16px;" class="el-icon-sort"></i> {{product?product.productName:'请选择一个产品'}}</div></h4>
<h4 href="#"><div class="sm-text hidden-lg-and-up"><i style="font-size:16px;" class="el-icon-sort"></i> {{product?product.productName:'请选择一个产品'}}</div></h4>
<h4 href="#"><div class="lg-text hidden-md-and-down"><i style="font-size:16px;" class="el-icon-sort"></i> {{product && product.id?product.productName:'请选择一个产品'}}</div></h4>
<h4 href="#"><div class="sm-text hidden-lg-and-up"><i style="font-size:16px;" class="el-icon-sort"></i> {{product && product.id?product.productName:'请选择一个产品'}}</div></h4>
</template> </template>
</xm-product-select> </xm-product-select>

4
src/views/xm/core/xmProject/XmProjectForLinkComplex.vue

@ -13,8 +13,8 @@
@clear="onProjectClearSelect" @clear="onProjectClearSelect"
> >
<template v-slot:title="{project}"> <template v-slot:title="{project}">
<h4 href="#"><div class="lg-text hidden-md-and-down"><i style="font-size:16px;" class="el-icon-sort"></i> {{project?project.name:'请选择一个项目'}}</div></h4>
<h4 href="#"><div class="sm-text hidden-lg-and-up"><i style="font-size:16px;" class="el-icon-sort"></i> {{project?project.name:'请选择一个项目'}}</div></h4>
<h4 href="#"><div class="lg-text hidden-md-and-down"><i style="font-size:16px;" class="el-icon-sort"></i> {{project && project.id?project.name:'请选择一个项目'}}</div></h4>
<h4 href="#"><div class="sm-text hidden-lg-and-up"><i style="font-size:16px;" class="el-icon-sort"></i> {{project & project.id ?project.name:'请选择一个项目'}}</div></h4>
</template> </template>
</xm-project-select> </xm-project-select>
</el-row> </el-row>

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

@ -75,7 +75,7 @@
components: { components: {
XmIterationSelect,XmProductSelect, XmIterationSelect,XmProductSelect,
}, },
props:['xmProduct','xmIteration','xmProject'],
props:['xmProduct','xmIteration','xmProject','initGroupBy'],
computed: { computed: {
...mapGetters([ ...mapGetters([
'userInfo','roles' 'userInfo','roles'
@ -110,7 +110,7 @@
preName=`项目【${this.filters.project.id}` preName=`项目【${this.filters.project.id}`
} }
} }
return preName+this.groupBys.find(i=>i.id==this.groupBy).name+'用户故事数量排行榜'
return preName+this.groupBys.find(i=>i.id==this.groupBy).name+'需求数量排行榜'
}, },
legendCpd(){ legendCpd(){
if(this.xmMenuSorts.length==0){ if(this.xmMenuSorts.length==0){
@ -174,6 +174,9 @@
methods: { methods: {
open(){ open(){
this.visible=true; this.visible=true;
if(this.initGroupBy){
this.groupBy=this.initGroupBy
}
this.filters.testPlan=this.xmTestPlan this.filters.testPlan=this.xmTestPlan
this.filters.product=this.xmProduct this.filters.product=this.xmProduct
this.filters.project=this.xmProject this.filters.project=this.xmProject

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

@ -110,7 +110,7 @@
components: { components: {
XmProjectSelect,XmIterationSelect,XmProductSelect,xmTestPlanSelect, XmProjectSelect,XmIterationSelect,XmProductSelect,xmTestPlanSelect,
}, },
props:['xmProject','xmProduct','xmIteration','xmTestCasedb','xmTestPlan','initGroupBy','visible'],
props:['xmProject','xmProduct','xmIteration','xmTestCasedb','xmTestPlan','initGroupBy'],
computed: { computed: {
...mapGetters([ ...mapGetters([
'userInfo','roles' 'userInfo','roles'

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

@ -1,9 +1,9 @@
<template> <template>
<section class="padding"> <section class="padding">
<el-row gutter="5">
<el-row :gutter="5">
<el-col :span="6"> <el-col :span="6">
<el-row> <el-row>
<el-select v-model="filters.category" clearable @change="onCategroySelect" style="width:100%;" :disabled="category">
<el-select v-model="filters.category" clearable @change="onCategroySelect" style="width:100%;" :disabled="!!category">
<el-option v-for="(item,index) in categorys" :label="item" :value="item" :key="index"></el-option> <el-option v-for="(item,index) in categorys" :label="item" :value="item" :key="index"></el-option>
</el-select> </el-select>
</el-row> </el-row>
@ -46,7 +46,10 @@
<xm-iteration-menu-day-accumulate v-if="showRptRef=='xmIterationMenuDayAccumulate'" :category="filters.category" ref="xmIterationMenuDayAccumulate" :xm-product="xmProduct" :xm-project="xmProject" :xm-iteration="xmIteration"></xm-iteration-menu-day-accumulate> <xm-iteration-menu-day-accumulate v-if="showRptRef=='xmIterationMenuDayAccumulate'" :category="filters.category" ref="xmIterationMenuDayAccumulate" :xm-product="xmProduct" :xm-project="xmProject" :xm-iteration="xmIteration"></xm-iteration-menu-day-accumulate>
<xm-menu-att-dist v-if="showRptRef=='xmMenuAttDist'" :category="filters.category" ref="xmMenuAttDist" :xm-product="xmProduct" :xm-project="xmProject" :xm-iteration="xmIteration"></xm-menu-att-dist> <xm-menu-att-dist v-if="showRptRef=='xmMenuAttDist'" :category="filters.category" ref="xmMenuAttDist" :xm-product="xmProduct" :xm-project="xmProject" :xm-iteration="xmIteration"></xm-menu-att-dist>
<xm-menu-age-dist v-if="showRptRef=='xmMenuAgeDist'" :category="filters.category" ref="xmMenuAgeDist" :xm-product="xmProduct" :xm-project="xmProject" :xm-iteration="xmIteration"></xm-menu-age-dist> <xm-menu-age-dist v-if="showRptRef=='xmMenuAgeDist'" :category="filters.category" ref="xmMenuAgeDist" :xm-product="xmProduct" :xm-project="xmProject" :xm-iteration="xmIteration"></xm-menu-age-dist>
<xm-menu-sort v-if="showRptRef=='xmMenuSort'" :category="filters.category" ref="xmMenuSort" :xm-product="xmProduct" :xm-project="xmProject" :xm-iteration="xmIteration"></xm-menu-sort>
<xm-menu-sort key="xmMenuSort" v-if="showRptRef=='xmMenuSort'" :category="filters.category" ref="xmMenuSort" :xm-product="xmProduct" :xm-project="xmProject" :xm-iteration="xmIteration"></xm-menu-sort>
<xm-menu-sort key="xmMenuFuncSort" init-group-by="func_id" v-if="showRptRef=='xmMenuFuncSort'" :category="filters.category" ref="xmMenuFuncSort" :xm-product="xmProduct" :xm-project="xmProject" :xm-iteration="xmIteration"></xm-menu-sort>
<xm-menu-sort key="xmMenuProductSort" init-group-by="product_id" v-if="showRptRef=='xmMenuProductSort'" :category="filters.category" ref="xmMenuProductSort" :xm-product="xmProduct" :xm-project="xmProject" :xm-iteration="xmIteration"></xm-menu-sort>
<xm-menu-sort key="xmMenuIterationSort" init-group-by="iteration_id" v-if="showRptRef=='xmMenuIterationSort'" :category="filters.category" ref="xmMenuIterationSort" :xm-product="xmProduct" :xm-project="xmProject" :xm-iteration="xmIteration"></xm-menu-sort>
<xm-task-day-trend v-if="showRptRef=='xmTaskDayTrend'" :category="filters.category" ref="xmTaskDayTrend" :xm-product="xmProduct" :xm-project="xmProject" :xm-iteration="xmIteration"></xm-task-day-trend> <xm-task-day-trend v-if="showRptRef=='xmTaskDayTrend'" :category="filters.category" ref="xmTaskDayTrend" :xm-product="xmProduct" :xm-project="xmProject" :xm-iteration="xmIteration"></xm-task-day-trend>
@ -242,7 +245,10 @@
{isChecked:false,rptName:'需求每日累积',category:'产品级',ref:'xmMenuDayAccumulate',desc:'跟踪未开始、执行中、已完成、已关闭状态的需求数量按日期累积情况,识别需求工作的瓶颈',img:areaStack }, {isChecked:false,rptName:'需求每日累积',category:'产品级',ref:'xmMenuDayAccumulate',desc:'跟踪未开始、执行中、已完成、已关闭状态的需求数量按日期累积情况,识别需求工作的瓶颈',img:areaStack },
{isChecked:false,rptName:'需求属性分布',category:'产品级,迭代级,企业级',ref:'xmMenuAttDist',desc:'统计所有需求任意属性数量分布情况(实时数据)',img:pieSimple }, {isChecked:false,rptName:'需求属性分布',category:'产品级,迭代级,企业级',ref:'xmMenuAttDist',desc:'统计所有需求任意属性数量分布情况(实时数据)',img:pieSimple },
{isChecked:false,rptName:'需求年龄分布',category:'产品级,迭代级,企业级',ref:'xmMenuAgeDist',desc:'统计所有需求年龄分布情况(实时数据)',img:pieSimple }, {isChecked:false,rptName:'需求年龄分布',category:'产品级,迭代级,企业级',ref:'xmMenuAgeDist',desc:'统计所有需求年龄分布情况(实时数据)',img:pieSimple },
{isChecked:false,rptName:'需求排行榜',category:'产品级,迭代级,企业级',ref:'xmMenuSort',desc:'需求提出人、负责人的用户故事数量排行(实时数据)',img:bar },
{isChecked:false,rptName:'需求排行榜',category:'产品级,迭代级,企业级',ref:'xmMenuSort',desc:'按提出人、负责人、迭代、产品等维度统计用户故事数量按高到低进行排行(实时数据)',img:bar },
{isChecked:false,rptName:'模块需求数量统计',category:'产品级,迭代级,企业级',ref:'xmMenuFuncSort',desc:'统计每个模块当前的需求数量(实时数据)',img:bar },
{isChecked:false,rptName:'迭代需求数量统计',category:'产品级,迭代级,企业级',ref:'xmMenuIterationSort',desc:'统计每个迭代当前的需求数量(实时数据)',img:bar },
{isChecked:false,rptName:'产品需求数量统计',category:'产品级,企业级',ref:'xmMenuProductSort',desc:'统计每个产品当前的需求数量(实时数据)',img:bar },
{isChecked:false,rptName:'产品缺陷每日趋势',category:'产品级',ref:'xmQuestionDayTrend',desc:'跟踪新提出、执行中、已解决、已关闭状态的缺陷数量按日期变化趋势,识别缺陷处理工作情况',img:lineStack }, {isChecked:false,rptName:'产品缺陷每日趋势',category:'产品级',ref:'xmQuestionDayTrend',desc:'跟踪新提出、执行中、已解决、已关闭状态的缺陷数量按日期变化趋势,识别缺陷处理工作情况',img:lineStack },
{isChecked:false,rptName:'产品缺陷每日累积',category:'产品级',ref:'xmQuestionDayAccumulate',desc:'跟踪一段时间内,各种程度和类别的缺陷累积情况,监控缺陷的变化趋势',img:areaStack }, {isChecked:false,rptName:'产品缺陷每日累积',category:'产品级',ref:'xmQuestionDayAccumulate',desc:'跟踪一段时间内,各种程度和类别的缺陷累积情况,监控缺陷的变化趋势',img:areaStack },

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

@ -24,7 +24,7 @@
<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>
</el-form-item> </el-form-item>
<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="xmTestPlan?xmTestPlan.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" @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>
</el-form-item> </el-form-item>
<el-form-item label="归属迭代" v-if="xmIteration && xmIteration.id"> <el-form-item label="归属迭代" v-if="xmIteration && xmIteration.id">
@ -122,7 +122,7 @@
preName=`项目【${this.filters.project.id}` preName=`项目【${this.filters.project.id}`
} }
} }
return preName+ this.groupBys.find(i=>i.id==this.groupBy).name+'排行榜'
return preName+ this.groupBys.find(i=>i.id==this.groupBy).name+'测试用例数量排行榜'
}, },
xmProductCpd(){ xmProductCpd(){
if(this.xmIteration && this.xmIteration.id && this.xmIteration.productId){ if(this.xmIteration && this.xmIteration.id && this.xmIteration.productId){

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

@ -20,7 +20,7 @@
<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>
</el-form-item> </el-form-item>
<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="xmTestPlan?xmTestPlan.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" @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>
</el-form-item> </el-form-item>
<el-form-item label="归属迭代" v-if="xmIteration && xmIteration.id"> <el-form-item label="归属迭代" v-if="xmIteration && xmIteration.id">

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

@ -19,7 +19,7 @@
<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>
</el-form-item> </el-form-item>
<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="xmTestPlan?xmTestPlan.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" @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>
</el-form-item> </el-form-item>
<el-form-item label="归属迭代" v-if="xmIteration && xmIteration.id"> <el-form-item label="归属迭代" v-if="xmIteration && xmIteration.id">

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

@ -20,7 +20,7 @@
<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>
</el-form-item> </el-form-item>
<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="xmTestPlan?xmTestPlan.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" @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>
</el-form-item> </el-form-item>
<el-form-item label="归属迭代" v-if="xmIteration && xmIteration.id"> <el-form-item label="归属迭代" v-if="xmIteration && xmIteration.id">

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

@ -20,7 +20,7 @@
<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>
</el-form-item> </el-form-item>
<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="xmTestPlan?xmTestPlan.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" @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>
</el-form-item> </el-form-item>
<el-form-item label="归属迭代" v-if="xmIteration && xmIteration.id"> <el-form-item label="归属迭代" v-if="xmIteration && xmIteration.id">

Loading…
Cancel
Save