From 2a7e4a712365872bf68f040ea1b7d0a7803e05b5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E8=A3=95=E8=B4=A2?= Date: Sun, 3 Apr 2022 21:31:45 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/xm/core/xmMenu.js | 4 + src/api/xm/core/xmProductStateHis.js | 4 +- src/views/xm/rpt/iteration/burnout.vue | 5 +- src/views/xm/rpt/product/menuAttDist.vue | 301 ++++++++++++++++++ .../xm/rpt/product/menuDayAccumulate.vue | 9 +- src/views/xm/rpt/product/menuDayTrend.vue | 9 +- src/views/xm/rpt/reportIndex.vue | 45 ++- 7 files changed, 359 insertions(+), 18 deletions(-) create mode 100644 src/views/xm/rpt/product/menuAttDist.vue diff --git a/src/api/xm/core/xmMenu.js b/src/api/xm/core/xmMenu.js index 0e5a2ece..d4ec907f 100644 --- a/src/api/xm/core/xmMenu.js +++ b/src/api/xm/core/xmMenu.js @@ -46,3 +46,7 @@ export const batchChangeParentMenu = params => { return axios.post(`${base}/xm/c +export const getXmMenuAttDist = params => { return axios.get(`${base}/xm/core/xmMenu/getXmMenuAttDist`, { params: params }); }; + + + diff --git a/src/api/xm/core/xmProductStateHis.js b/src/api/xm/core/xmProductStateHis.js index acce018d..c4d3c68b 100644 --- a/src/api/xm/core/xmProductStateHis.js +++ b/src/api/xm/core/xmProductStateHis.js @@ -27,4 +27,6 @@ export const batchDelXmProductStateHis = params => { return axios.post(`${base}/ export const editXmProductStateHis = params => { return axios.post(`${base}/xm/core/xmProductStateHis/edit`, params); }; //新增一条功能状态表,无需前端维护,所有数据由汇总统计得出 -export const addXmProductStateHis = params => { return axios.post(`${base}/xm/core/xmProductStateHis/add`, params); }; \ No newline at end of file +export const addXmProductStateHis = params => { return axios.post(`${base}/xm/core/xmProductStateHis/add`, params); }; + +export const getXmMenuAttDist = params => { return axios.get(`${base}/xm/core/xmProductStateHis/getXmMenuAttDist`, { params: params }); }; \ No newline at end of file diff --git a/src/views/xm/rpt/iteration/burnout.vue b/src/views/xm/rpt/iteration/burnout.vue index f9a794b9..430d10a4 100644 --- a/src/views/xm/rpt/iteration/burnout.vue +++ b/src/views/xm/rpt/iteration/burnout.vue @@ -2,7 +2,7 @@
-
@@ -113,7 +113,7 @@ }, drawWorkload() { - this.myChart = this.$echarts.init(document.getElementById("main")); + this.myChart = this.$echarts.init(document.getElementById("burnout")); this.myChart.setOption({ title: { text: '燃尽图:', @@ -197,6 +197,7 @@ }) */ //this.charts(); + //this.drawWorkload(); }//end mounted } diff --git a/src/views/xm/rpt/product/menuAttDist.vue b/src/views/xm/rpt/product/menuAttDist.vue new file mode 100644 index 00000000..b0567d88 --- /dev/null +++ b/src/views/xm/rpt/product/menuAttDist.vue @@ -0,0 +1,301 @@ + + + + + \ No newline at end of file diff --git a/src/views/xm/rpt/product/menuDayAccumulate.vue b/src/views/xm/rpt/product/menuDayAccumulate.vue index f5f6b2e2..efac97fc 100644 --- a/src/views/xm/rpt/product/menuDayAccumulate.vue +++ b/src/views/xm/rpt/product/menuDayAccumulate.vue @@ -2,7 +2,7 @@
-
@@ -65,7 +65,7 @@ }, watch: { xmProductStateHiss(){ - this.drawWorkload(); + this.drawCharts(); } }, data() { @@ -113,8 +113,8 @@ }) }, - drawWorkload() { - this.myChart = this.$echarts.init(document.getElementById("main")); + drawCharts() { + this.myChart = this.$echarts.init(document.getElementById("menuDayAccumulate")); this.myChart.setOption( { title: { @@ -182,6 +182,7 @@ }) */ //this.charts(); + //this.drawCharts() }//end mounted } diff --git a/src/views/xm/rpt/product/menuDayTrend.vue b/src/views/xm/rpt/product/menuDayTrend.vue index 0893af4d..fb109832 100644 --- a/src/views/xm/rpt/product/menuDayTrend.vue +++ b/src/views/xm/rpt/product/menuDayTrend.vue @@ -2,7 +2,7 @@
-
@@ -65,7 +65,7 @@ }, watch: { xmProductStateHiss(){ - this.drawWorkload(); + this.drawCharts(); } }, data() { @@ -113,8 +113,8 @@ }) }, - drawWorkload() { - this.myChart = this.$echarts.init(document.getElementById("main")); + drawCharts() { + this.myChart = this.$echarts.init(document.getElementById("menuDayTrend")); this.myChart.setOption( { legend: { @@ -208,6 +208,7 @@ }) */ //this.charts(); + //this.drawCharts(); }//end mounted } diff --git a/src/views/xm/rpt/reportIndex.vue b/src/views/xm/rpt/reportIndex.vue index ba23e8c1..08669a95 100644 --- a/src/views/xm/rpt/reportIndex.vue +++ b/src/views/xm/rpt/reportIndex.vue @@ -12,6 +12,10 @@
{{p.rptName}} +
+ + +
@@ -20,6 +24,7 @@ +
@@ -30,11 +35,11 @@ import xmIterationBurnout from './iteration/burnout' import xmMenuDayTrend from './product/menuDayTrend' import xmMenuDayAccumulate from './product/menuDayAccumulate' - + import xmMenuAttDist from './product/menuAttDist' export default { components: { - xmIterationBurnout,xmMenuDayTrend,xmMenuDayAccumulate, + xmIterationBurnout,xmMenuDayTrend,xmMenuDayAccumulate,xmMenuAttDist, }, props:['xmProduct','xmIteration','xmProject'], computed: { @@ -76,9 +81,10 @@ dateRanger:[], maxTableHeight:300, rptList:[/**{name:'报表名称',category:'报表分类,组织级、产品级、项目级、迭代级、需求、测试、任务',path:'路由路径',imgUrl:'图片路径',query:{参数}} */ - {rptName:'迭代燃尽图',category:'迭代级',ref:'xmIterationBurnout' }, - {rptName:'需求每日趋势',category:'产品级',ref:'xmMenuDayTrend' }, - {rptName:'需求每日累积',category:'产品级',ref:'xmMenuDayAccumulate' }, + {rptName:'迭代燃尽图',category:'迭代级',ref:'xmIterationBurnout',desc:'跟踪迭代的剩余工作量按日期变化趋势,识别迭代当前进度情况' }, + {rptName:'需求每日趋势',category:'产品级',ref:'xmMenuDayTrend',desc:'跟踪未开始、执行中、已完成、已关闭状态的需求数量按日期变化趋势,识别需求工作情况' }, + {rptName:'需求每日累积',category:'产品级',ref:'xmMenuDayAccumulate',desc:'跟踪未开始、执行中、已完成、已关闭状态的需求数量按日期累积情况,识别需求工作的瓶颈' }, + {rptName:'需求属性分布',category:'产品级',ref:'xmMenuAttDist',desc:'统计所有需求任意属性数量分布情况(实时数据)' }, ], }//end return },//end data @@ -107,9 +113,34 @@ - \ No newline at end of file