Zen Path Defectsに障害責任者フィールドを追加する
作成者:Guest QQ :1033553122
実用的な環境
ZenTaoプロジェクト管理ソフトウェア9.2.1、8.0オープンソースLinuxバージョン
カスタムテーブルをデータベーステーブルzt_bugに追加する
ALTER TABLE `zt_bug` ADD COLUMN personLiable VARCHAR(50)AFTER resolveBy;
zentaopms / module / bug / lang / zh-cn.phpを変更します
次の図に示すように、新しいアイコン選択ボックスのバグフィールドが追加されます。つまり、次のコードが適切な位置に挿入されます
$ lang-> bug-> personLiable = '担当者';
注:著者が使用するZen Daoの言語は中国語なので、zh-cn.phpのみを変更し、英語のen.phpやtw.phpは変更しないでください。
修改zentaopms / module / bug / view / create.html.php
以下に示すように、次のコードを適切な場所に挿入します
<tr>
<th> <nobr> <?php echo $ lang-> bug-> personLiable;?> </ nobr> </ th>
<td>
<div class = 'input-group'>
<?php echo html :: select( 'personLiable'、$ projectMembers、$ personLiable、 "class = 'from-control selected'");?>
<span class = 'input-group-btn'> <?php echo html :: commonButton($ lang-> bug-> allUsers、 "class = 'btn btn-default' onclick = 'loadAllUsers()' data-toggle = 'ツールチップ' ");?> </ span>
</ div>
</ td>
</ tr>
効果を変更する
zentaopms / module / bug / view / edit.html.phpを変更します
以下に示すように、次のコードを適切な場所に挿入します
js :: set( 'personLiable'、$ bug-> personLiable);
以下に示すように、次のコードを適切な場所に挿入します
<tr>
<th> <?php echo $ lang-> bug-> personLiable;?> </ th>
<td> <?php echo html :: select( 'personLiable'、$ users、$ bug-> personLiable、 "class = 'form-control chosen'");?> </ td>
</ tr>
効果を変更する
zentaopms / module / bug / view / resolve.html.phpを変更します
以下に示すように、次のコードを適切な場所に挿入します
<tr>
<th> <?php echo $ lang-> bug-> personLiable;?> </ th>
<td>
<?php if($ bug-> personLiable):?>
<?php echo html :: select( 'personLiable'、$ users、$ bug-> personLiable、 "class = 'form-control selected'");?>
<?php endif;?>
<?php if(!$ bug-> personLiable):?>
<?php echo html :: select( 'personLiable'、$ users、$ bug-> assignedTo、 "class = 'form-control chosen'");?>
<?php endif;?>
</ td>
</ tr>
注:バグの解決時に現在の「責任者」が空の場合、現在の責任者の初期値は現在の「担当者」に設定されます。
効果を変更する
修改zentaopms / module / bug / view / view.html.php
次のコードを適切な場所に挿入します
<tr>
<th> <?php echo $ lang-> bug-> personLiable;?> </ th>
<td> <?php if($ bug-> personLiable)echo $ users [$ bug-> personLiable];?> </ td>
</ tr>
効果を変更する
zentaopms /モジュール/バグ/config.phpを変更します
personLiableフィールドをconfig-> bug-> create-> requiredFieldsに追加します(バグを作成するときは、「担当者」、「責任者」が必要です)
config-> bug-> create-> requiredFields = 'title、openedBuild、assignedTo;
修正
$ config-> bug-> edit-> requiredFields = $ config-> bug-> create-> requiredFields;
のために
$ config-> bug-> edit-> requiredFields = 'title、openedBuild、assignedTo、personLiable';
注:ページの関連フィールドの必要な設定を編集します。元のコードに従って設定されている場合、ページの作成と同じになります。
personLiableフィールドを$ config-> bug-> resolve-> requiredFieldsに追加します(バグの解決には「責任者」が必要です)
$ config-> bug-> resolve-> requiredFields = 'resolution、source、personLiable';
次のコードを適切な場所に追加します(「責任者」検索フィールドを追加します)
$ config-> bug-> search ['fields'] ['personLiable'] = $ lang-> bug-> personLiable;
次のコードを適切な場所に追加します(「責任者」検索フィールドのオプションの値、つまり責任者のオプションリストを設定します)。
$ config-> bug-> search ['params'] ['personLiable'] = array( 'operator' => '='、 'control' => 'select'、 'values' => 'users');
zentaopms / module / bug / control.phpを変更します
public function export($ productID、$ orderBy)関数コードを次のように変更し、次のコードを適切な場所に追加して、レポートのエクスポートの問題を解決します。新しいフィールド列の値は列挙されたオプション値セットではなく、インデックス値の問題です。
if(isset($ users [$ bug-> personLiable]))$ bug-> personLiable = $ users [$ bug-> personLiable];