禅道BUG页面自定义新增【所属部门】字段与组织关联

文章详细描述了如何在禅道系统中通过SQL语句添加部门列到zt_bug表,以及修改zh-cn.php、model.php、control.php、vim.html.php和config.php等文件,实现数据库连接、字段显示和搜索功能的部门关联设置。
摘要由CSDN通过智能技术生成

二开后的界面如下
在这里插入图片描述
在这里插入图片描述

1. 数据库中执行本SQL

进入禅道初始页面,选择【数据库管理】,输入对应的用户名、密码后,在数据库中执行:

ALTER TABLE `zt_bug` ADD COLUMN dept VARCHAR(100) AFTER severity;

在这里插入图片描述

2.修改zh-cn

进入服务器目录/opt/zbox/app/zentao/module/bug/lang/下(注意:/opt/zbox/app/为禅道安装目录),在zh-cn.php文件中新增如下:
/* 字段列表。*/ 下61行和146行新增如下代码:

$lang->bug->dept             = '所属部门';

在这里插入图片描述
在这里插入图片描述

3.修改model.php页面

进入/opt/zbox/app/zentao/module/bug/model.php文件,在59行后新增代码:

    /**create by xiaogao. Get dept of user */       
    public function getDeptByAccounts($accounts='')
    {
       /* if(empty($accounts)) return '';*/        
        $dept=$this->dao->select('account,realname,dept')->from(TABLE_USER)
            ->where('account')->eq($accounts)
            ->fetch('dept');
        return strval($dept);      
}

在这里插入图片描述

在86行后和97行后添加如下代码:

            ->setDefault('dept', $this->app->user->dept)
            ->setIF($this->post->assignedTo != '', 'dept', $this->loadModel('bug')->getDeptByAccounts($this->post->assignedTo))

在这里插入图片描述

在216行添加:

            $depts    = array_filter($data->depts[$i]);

在232行添加:

            $data->depts[$i]      = implode(',', $depts);

在这里插入图片描述

在246行添加:

            $bug->dept        = $this->app->user->dept;

在这里插入图片描述

在public function update($bugID)函数下,第786行和1090行添加如下代码

            ->setIF($this->post->assignedTo  != $oldBug->assignedTo, 'dept', $this->loadModel('bug')->getDeptByAccounts($this->post->assignedTo))

在这里插入图片描述
在这里插入图片描述

在public function buildSearchForm函数下1694行添加如下代码:

        $this->config->bug->search['params']['dept']['values']          = array('' => '') + $this->loadModel('dept')->getOptionMenu();

在这里插入图片描述

在3437行添加如下代码(选择是否添加)

               case 'dept':
                    $class .= ' c-user';
                    $title  = "title='" . zget($users, $bug->dept) . "'";
                    break;

在这里插入图片描述

4.修改control.php页面

进入/opt/zbox/app/zentao/module/bug下,在control.php文件248行、688行和1195行后新增以下代码:

        $this->view->depts           =$this->loadModel('dept')->getOptionMenu();
        $this->view->dept            = $dept;

在这里插入图片描述

在1583行添加如下代码(列表分配是部门跟随变动):

,$this->loadModel('bug')->getDeptByAccounts($this->post->assignedTo)

在这里插入图片描述

5.修改vim.html.php页面

进入/opt/zbox/app/zentao/module/bug/view/下,在vim.html.php文件350行后新增以下代码:

                <tr>
                  <th><?php echo $lang->bug->dept;?></th>                 
                  <td><?php echo zget($this->loadModel('dept')->getOptionMenu(), $bug->dept, $dept);?></td>                               
                </tr>

在这里插入图片描述
修改后效果:
在这里插入图片描述

6.修改config.php页面

进入/opt/zbox/app/zentao/module/bug/下,在config.php文件16和29行新增以下代码:

dept,

在这里插入图片描述

在101行新增如下代码:

$config->bug->search['fields']['dept']           = $lang->bug->dept;

在这里插入图片描述

在147行新增如下代码:

$config->bug->search['params']['dept']          = array('operator' => 'belong',  'control' => 'select', 'values' => '');

在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值