Browse Source

优化

master
陈裕财 3 years ago
parent
commit
ddc4e1c369
  1. 70
      src/views/xm/core/xmTestPlan/rpt/CompsCard.vue
  2. 4
      src/views/xm/core/xmTestPlan/rpt/biz/questionAgeDist.vue
  3. 2
      src/views/xm/core/xmTestPlan/rpt/biz/questionAskUserSort.vue
  4. 6
      src/views/xm/core/xmTestPlan/rpt/biz/questionAttDist.vue
  5. 2
      src/views/xm/core/xmTestPlan/rpt/biz/questionFuncSort.vue
  6. 2
      src/views/xm/core/xmTestPlan/rpt/biz/questionHandlerUserSort.vue
  7. 2
      src/views/xm/core/xmTestPlan/rpt/biz/questionMenuSort.vue
  8. 6
      src/views/xm/core/xmTestPlan/rpt/biz/questionSort.vue
  9. 6
      src/views/xm/core/xmTestPlan/rpt/biz/testPlanCaseExecStatusDist.vue
  10. 6
      src/views/xm/core/xmTestPlan/rpt/biz/testPlanCaseUserDist.vue
  11. 9
      src/views/xm/core/xmTestPlan/rpt/index.vue

70
src/views/xm/core/xmTestPlan/rpt/CompsCard.vue

@ -1,10 +1,10 @@
<template> <template>
<section> <section>
<el-row v-if="rptConfigVisible" class="page-center border">
<el-col :span="6" :style="{height:maxTableHeight+'px',overflow:'auto'}">
<el-row class="page-center border">
<el-col :span="rptConfigVisible?6:0" :style="{height:maxTableHeight+'px',overflow:'auto'}">
<comps-set :comp-ids="compIds" @row-click="onCompSelect"></comps-set> <comps-set :comp-ids="compIds" @row-click="onCompSelect"></comps-set>
</el-col> </el-col>
<el-col :span="18" :style="{height:maxTableHeight+'px',overflow:'auto'}" ref="table">
<el-col :span="rptConfigVisible?18:24" :style="{height:maxTableHeight+'px',overflow:'auto'}" ref="table">
<div> <div>
<div class="empty" v-if="compCfgList.length == 0" > <div class="empty" v-if="compCfgList.length == 0" >
<el-empty description="暂未选择模块"></el-empty> <el-empty description="暂未选择模块"></el-empty>
@ -29,17 +29,12 @@
:h="item.h" :h="item.h"
:i="item.i" :i="item.i"
:key="index"> :key="index">
<component :is="item.compId" :xm-test-plan="xmTestPlan" :comp-cfg="item"></component>
<component :is="item.compId" :xm-test-plan="xmTestPlan" :comp-cfg="item" :ref="item.id" @delete="doDelete"></component>
</grid-item> </grid-item>
</grid-layout> </grid-layout>
</div> </div>
</div> </div>
</el-col> </el-col>
</el-row>
<el-row v-if="rptConfigVisible==false" :style="{height:maxTableHeight+'px',overflow:'auto'}" ref="table" class="page-center border">
<el-row v-for="(item,index) in initCompCfg" :key="index">
<component :is="item.compId" :xm-test-plan="xmTestPlan" :comp-cfg="item"></component>
</el-row>
</el-row> </el-row>
</section> </section>
</template> </template>
@ -62,8 +57,8 @@ import xmTestPlanCaseExecStatusDist from '@/views/xm/core/xmTestPlan/rpt/biz/tes
import xmTestPlanCaseUserDist from '@/views/xm/core/xmTestPlan/rpt/biz/testPlanCaseUserDist' import xmTestPlanCaseUserDist from '@/views/xm/core/xmTestPlan/rpt/biz/testPlanCaseUserDist'
import { initDicts,listXmRptConfig, delXmRptConfig, batchDelXmRptConfig,editSomeFieldsXmRptConfig } from '@/api/xm/core/xmRptConfig';
import { initDicts,listXmRptConfig, delXmRptConfig,editXmRptConfig,addXmRptConfig,batchDelXmRptConfig,editSomeFieldsXmRptConfig } from '@/api/xm/core/xmRptConfig';
export default { export default {
components: { components: {
GridLayout: VueGridLayout.GridLayout, GridLayout: VueGridLayout.GridLayout,
@ -124,6 +119,9 @@ export default {
}, },
methods: { methods: {
initData(){
this.getXmRptConfig();
},
getXmRptConfig(){ getXmRptConfig(){
if(!this.xmTestPlan){ if(!this.xmTestPlan){
return; return;
@ -140,16 +138,60 @@ export default {
this.compCfgList=JSON.parse(JSON.stringify(this.initCompCfg)) this.compCfgList=JSON.parse(JSON.stringify(this.initCompCfg))
} }
}, },
onCompSelect(comp){
var compCfg={i:this.compCfgList.length+1, x: 0, y: 12, w: 12, h: 6, compId:comp.compId,name:comp.name,id:comp.compId+seq.sn(),params:{}}
onCompSelect(comp){
var compCfgListTemp=JSON.parse(JSON.stringify(this.compCfgList))
compCfgListTemp.sort((i1,i2)=>{
return i2.i-i1.i
})
var maxI=(compCfgListTemp.length>0?(compCfgListTemp[0].i+1):1);
compCfgListTemp.sort((i1,i2)=>{
return i2.y-i1.y
})
var maxY=(compCfgListTemp.length>0?(compCfgListTemp[0].y+6):0);
var compCfg={i:maxI, x: 0, y: maxY, w: 12, h: 6, compId:comp.compId,name:comp.name,id:comp.compId+seq.sn(),params:{}}
this.compCfgList.push(compCfg) this.compCfgList.push(compCfg)
},
submitXmPrtConfig(callback){
if(this.xmRptConfig==null){
var xmRptConfig={name:this.xmTestPlan.name,bizId:this.xmTestPlan.id,cfg:[]}
var compCfgList=JSON.parse(JSON.stringify(this.compCfgList))
compCfgList.forEach(k=>{
k.params=this.$refs[k.id].filters
})
xmRptConfig.cfg=JSON.stringify(compCfgList)
addXmRptConfig(xmRptConfig).then(res=>{
this.xmRptConfig=xmRptConfig;
callback()
})
}else{
var xmRptConfig={id:this.xmRptConfig.id,name:this.xmTestPlan.name,bizId:this.xmTestPlan.id,cfg:[]}
var compCfgList=JSON.parse(JSON.stringify(this.compCfgList))
compCfgList.forEach(k=>{
k.params=this.$refs[k.id].filters
})
xmRptConfig.cfg=JSON.stringify(compCfgList)
editXmRptConfig(xmRptConfig).then(res=>{
this.xmRptConfig=xmRptConfig;
callback()
})
}
},
doDelete(compCfg){
if(this.rptConfigVisible==false){
this.$notify({ position:'bottom-left', showClose:true, message: "当前报告为预览模式,不能删除,请切换为配置报告模式", type: 'error' });
return;
}
var index=this.compCfgList.findIndex(k=>k.id==compCfg.id)
if(index>=0){
this.compCfgList.splice(index,1)
}
} }
}, },
mounted() { mounted() {
this.$nextTick(() => { this.$nextTick(() => {
this.initData();
this.maxTableHeight = util.calcTableMaxHeight(this.$refs.table.$el) this.maxTableHeight = util.calcTableMaxHeight(this.$refs.table.$el)
}) })
}, },

4
src/views/xm/core/xmTestPlan/rpt/biz/questionAgeDist.vue

@ -6,6 +6,7 @@
<el-button slot="reference" icon="el-icon-more" @click="conditionBtnVisible=!conditionBtnVisible"></el-button> <el-button slot="reference" icon="el-icon-more" @click="conditionBtnVisible=!conditionBtnVisible"></el-button>
<el-row> <el-row>
<el-button type="danger" icon="el-icon-delete" @click="doDelete">删除</el-button>
<el-button style="float:right;" type="text" icon="el-icon-close" @click="conditionBtnVisible=false">关闭</el-button> <el-button style="float:right;" type="text" icon="el-icon-close" @click="conditionBtnVisible=false">关闭</el-button>
</el-row> </el-row>
<el-form :model="filters"> <el-form :model="filters">
@ -203,6 +204,9 @@
onIterationSelected(iteration){ onIterationSelected(iteration){
this.filters.iteration=iteration this.filters.iteration=iteration
}, },
doDelete(){
this.$emit("delete",this.compCfg)
},
onIterationClear(){ onIterationClear(){
this.filters.iteration=null this.filters.iteration=null

2
src/views/xm/core/xmTestPlan/rpt/biz/questionAskUserSort.vue

@ -1,7 +1,7 @@
<template> <template>
<section> <section>
<el-row> <el-row>
<question-sort ref="questionSort" :xm-test-plan="xmTestPlan" :comp-cfg="compCfg" :rpt-config-visible="rptConfigVisible" :group-by="'ask_userid'"/>
<question-sort ref="questionSort" :xm-test-plan="xmTestPlan" :comp-cfg="compCfg" :rpt-config-visible="rptConfigVisible" :group-by="'ask_userid'" @delete="$emit('delete',$event)"/>
</el-row> </el-row>
</section> </section>
</template> </template>

6
src/views/xm/core/xmTestPlan/rpt/biz/questionAttDist.vue

@ -5,6 +5,7 @@
<el-popover trigger="manual" v-model="conditionBtnVisible" style="float:right;" width="300"> <el-popover trigger="manual" v-model="conditionBtnVisible" style="float:right;" width="300">
<el-button slot="reference" icon="el-icon-more" @click="conditionBtnVisible=!conditionBtnVisible"></el-button> <el-button slot="reference" icon="el-icon-more" @click="conditionBtnVisible=!conditionBtnVisible"></el-button>
<el-row> <el-row>
<el-button type="danger" icon="el-icon-delete" @click="doDelete">删除</el-button>
<el-button style="float:right;" type="text" icon="el-icon-close" @click="conditionBtnVisible=false">关闭</el-button> <el-button style="float:right;" type="text" icon="el-icon-close" @click="conditionBtnVisible=false">关闭</el-button>
</el-row> </el-row>
<el-form :model="filters"> <el-form :model="filters">
@ -292,7 +293,10 @@
Object.assign(this.filters,compCfg.params) Object.assign(this.filters,compCfg.params)
} }
} }
}
},
doDelete(){
this.$emit("delete",this.compCfg)
},
},//end method },//end method
mounted() { mounted() {
initSimpleDicts('all',['bugSeverity','bugSolution','bugStatus','bugType','priority','bugRepRate','bugReason'] ).then(res=>{ initSimpleDicts('all',['bugSeverity','bugSolution','bugStatus','bugType','priority','bugRepRate','bugReason'] ).then(res=>{

2
src/views/xm/core/xmTestPlan/rpt/biz/questionFuncSort.vue

@ -1,7 +1,7 @@
<template> <template>
<section> <section>
<el-row> <el-row>
<question-sort ref="questionSort" :xm-test-plan="xmTestPlan" :comp-cfg="compCfg" :rpt-config-visible="rptConfigVisible" :group-by="'func_id'"/>
<question-sort ref="questionSort" :xm-test-plan="xmTestPlan" :comp-cfg="compCfg" :rpt-config-visible="rptConfigVisible" :group-by="'func_id'" @delete="$emit('delete',$event)"/>
</el-row> </el-row>
</section> </section>
</template> </template>

2
src/views/xm/core/xmTestPlan/rpt/biz/questionHandlerUserSort.vue

@ -1,7 +1,7 @@
<template> <template>
<section> <section>
<el-row> <el-row>
<question-sort ref="questionSort" :xm-test-plan="xmTestPlan" :comp-cfg="compCfg" :rpt-config-visible="rptConfigVisible" :group-by="'handler_userid'"/>
<question-sort ref="questionSort" :xm-test-plan="xmTestPlan" :comp-cfg="compCfg" :rpt-config-visible="rptConfigVisible" :group-by="'handler_userid'" @delete="$emit('delete',$event)"/>
</el-row> </el-row>
</section> </section>
</template> </template>

2
src/views/xm/core/xmTestPlan/rpt/biz/questionMenuSort.vue

@ -1,7 +1,7 @@
<template> <template>
<section> <section>
<el-row> <el-row>
<question-sort ref="questionSort" :xm-test-plan="xmTestPlan" :comp-cfg="compCfg" :rpt-config-visible="rptConfigVisible" :group-by="'menu_id'"/>
<question-sort ref="questionSort" :xm-test-plan="xmTestPlan" :comp-cfg="compCfg" :rpt-config-visible="rptConfigVisible" :group-by="'menu_id'" @delete="$emit('delete',$event)" />
</el-row> </el-row>
</section> </section>
</template> </template>

6
src/views/xm/core/xmTestPlan/rpt/biz/questionSort.vue

@ -5,6 +5,7 @@
<el-popover trigger="manual" v-model="conditionBtnVisible" style="float:right;" width="300"> <el-popover trigger="manual" v-model="conditionBtnVisible" style="float:right;" width="300">
<el-button slot="reference" icon="el-icon-more" @click="conditionBtnVisible=!conditionBtnVisible"></el-button> <el-button slot="reference" icon="el-icon-more" @click="conditionBtnVisible=!conditionBtnVisible"></el-button>
<el-row> <el-row>
<el-button type="danger" icon="el-icon-delete" @click="doDelete">删除</el-button>
<el-button style="float:right;" type="text" icon="el-icon-close" @click="conditionBtnVisible=false">关闭</el-button> <el-button style="float:right;" type="text" icon="el-icon-close" @click="conditionBtnVisible=false">关闭</el-button>
</el-row> </el-row>
<el-form :model="filters"> <el-form :model="filters">
@ -229,7 +230,10 @@
Object.assign(this.filters,compCfg.params) Object.assign(this.filters,compCfg.params)
} }
} }
}
},
doDelete(){
this.$emit("delete",this.compCfg)
},
},//end method },//end method
mounted() { mounted() {
initSimpleDicts('all',['bugSeverity','bugSolution','bugStatus','bugType','priority','bugRepRate','bugReason'] ).then(res=>{ initSimpleDicts('all',['bugSeverity','bugSolution','bugStatus','bugType','priority','bugRepRate','bugReason'] ).then(res=>{

6
src/views/xm/core/xmTestPlan/rpt/biz/testPlanCaseExecStatusDist.vue

@ -5,6 +5,7 @@
<el-popover trigger="manual" v-model="conditionBtnVisible" style="float:right;" width="300"> <el-popover trigger="manual" v-model="conditionBtnVisible" style="float:right;" width="300">
<el-button slot="reference" icon="el-icon-more" @click="conditionBtnVisible=!conditionBtnVisible"></el-button> <el-button slot="reference" icon="el-icon-more" @click="conditionBtnVisible=!conditionBtnVisible"></el-button>
<el-row> <el-row>
<el-button type="danger" icon="el-icon-delete" @click="doDelete">删除</el-button>
<el-button style="float:right;" type="text" icon="el-icon-close" @click="conditionBtnVisible=false">关闭</el-button> <el-button style="float:right;" type="text" icon="el-icon-close" @click="conditionBtnVisible=false">关闭</el-button>
</el-row> </el-row>
<el-form :model="filters"> <el-form :model="filters">
@ -176,7 +177,10 @@
Object.assign(this.filters,compCfg.params) Object.assign(this.filters,compCfg.params)
} }
} }
}
},
doDelete(){
this.$emit("delete",this.compCfg)
},
},//end method },//end method
mounted() { mounted() {
initSimpleDicts('all',['testPlanTcode'] ).then(res=>{ initSimpleDicts('all',['testPlanTcode'] ).then(res=>{

6
src/views/xm/core/xmTestPlan/rpt/biz/testPlanCaseUserDist.vue

@ -5,6 +5,7 @@
<el-popover trigger="manual" v-model="conditionBtnVisible" style="float:right;" width="300"> <el-popover trigger="manual" v-model="conditionBtnVisible" style="float:right;" width="300">
<el-button slot="reference" icon="el-icon-more" @click="conditionBtnVisible=!conditionBtnVisible"></el-button> <el-button slot="reference" icon="el-icon-more" @click="conditionBtnVisible=!conditionBtnVisible"></el-button>
<el-row> <el-row>
<el-button type="danger" icon="el-icon-delete" @click="doDelete">删除</el-button>
<el-button style="float:right;" type="text" icon="el-icon-close" @click="conditionBtnVisible=false">关闭</el-button> <el-button style="float:right;" type="text" icon="el-icon-close" @click="conditionBtnVisible=false">关闭</el-button>
</el-row> </el-row>
<el-form :model="filters"> <el-form :model="filters">
@ -170,7 +171,10 @@
Object.assign(this.filters,compCfg.params) Object.assign(this.filters,compCfg.params)
} }
} }
}
},
doDelete(){
this.$emit("delete",this.compCfg)
},
},//end method },//end method
mounted() { mounted() {
initSimpleDicts('all',['testPlanTcode'] ).then(res=>{ initSimpleDicts('all',['testPlanTcode'] ).then(res=>{

9
src/views/xm/core/xmTestPlan/rpt/index.vue

@ -1,7 +1,7 @@
<template> <template>
<section> <section>
<el-row v-if="rptConfigVisible"> <el-row v-if="rptConfigVisible">
<span style="float:right;"> <el-button @click="rptConfigVisible=false">取消配置</el-button><el-button @click="rptConfigVisible=true" type="primary">保存配置</el-button></span>
<span style="float:right;"> <el-button @click="rptConfigVisible=false">取消配置</el-button><el-button @click="saveXmRptConfig" type="primary">保存配置</el-button></span>
</el-row> </el-row>
<el-row> <el-row>
<comps-card ref="compsCard" :xm-test-plan="xmTestPlan" :rpt-config-visible="rptConfigVisible"/> <comps-card ref="compsCard" :xm-test-plan="xmTestPlan" :rpt-config-visible="rptConfigVisible"/>
@ -36,7 +36,12 @@ export default {
}, },
methods: { methods: {
saveXmRptConfig(){
var callback=()=>{
this.rptConfigVisible=false;
}
this.$refs['compsCard'].submitXmPrtConfig(callback)
}
}, },

Loading…
Cancel
Save