禅道添加BUG自定义字段至统计报表
文章目录
前言
之前有写过禅道如何添加BUG自定义字段的文章,但是添加完字段后,bug的报表统计中没有该字段的信息,无法按照自定义的字段进行bug分析,今天记录下,如何将自定义的字段添加到BUG的统计报表中去。
一、zh-cn.php中添加新字段报表信息
打开zh-cn.php文件
cd zentaopms/module/bug/lang
vim zh-cn.php
以下操作全部在zh-cn.php中
- 添加统计报表字段
$lang->bug->report->charts['bugsPerClient'] = '按客户端';
位置如下
2. 添加字段报表空对象
$lang->bug->report->bugsPerClient = new stdclass();
位置如下
- 添加图表空对象
$lang->bug->report->bugsPerClient->graph = new stdclass();
位置如下
- 添加图表显示字段信息
$lang->bug->report->bugsPerClient->graph->xAxisName = '客户端';
位置如下
:wq保存退出
二、module.php中新增字段统计方法
编辑module.php信息
cd zentaopms/module/bug
vim module.php
添加方法
/**
* Get report data of bugs client
* 根据客户端获取报表
* @access public
* @rerturn array
*/
public function getDataOfBugsPerClient()
{
$datas = $this->dao->select('client AS name, COUNT(*) AS value')->from(TABLE_BUG)->where($this->reportCondition())->groupBy('name')->orderBy('value DESC')->fetchAll('name');
if(!$datas) return array();
foreach($datas as $client => $data) if(isset($this->lang->bug->clientList[$client])) $data->name = $this->lang->bug->clientList[$client];
return $datas;
}
方法解释(无需修改的部分不再解释):
public function getDataOfBugsPerClient(),方法定义,方法名为getDataOfBugsPerClient,其中getDataOf为固定格式,BugsPerClient为上面zh-ch.php报表部分定义的名称,注意不是添加的字段名称,是报表中定义的名称
select(‘client AS name, COUNT(*) AS value’):中client为新增字段名称
foreach($datas as $client => d a t a ) i f ( i s s e t ( data) if(isset( data)if(isset(this->lang->bug->clientList[$client])) $data->name = t h i s − > l a n g − > b u g − > c l i e n t L i s t [ this->lang->bug->clientList[ this−>lang−>bug−>clientList[client]:中client为新加字段信息,clientList为新增字段数据信息都在zh-ch.php中定义,按照自己新增字段信息一一修改就可
注:如何新增字段,看这篇文章,这里不再赘述
方法添加完成后,:wq保存退出即可
总结
操作完成后,即可试用新字段进行统计分析了