# Conflicts:
#	www/theme/default/style.css
This commit is contained in:
Catouse
2018-09-21 18:19:26 +08:00
10 changed files with 57 additions and 25 deletions
+12 -7
View File
@@ -157,14 +157,19 @@ class blockModel extends model
{
$data = array();
$projects = $this->loadModel('project')->getPairs();
$products = $this->loadModel('product')->getPairs();
$data['tasks'] = (int)$this->dao->select('count(*) AS count')->from(TABLE_TASK)->where('assignedTo')->eq($this->app->user->account)->andWhere('deleted')->eq(0)->fetch('count');
$data['bugs'] = (int)$this->dao->select('count(*) AS count')->from(TABLE_BUG)->where('assignedTo')->eq($this->app->user->account)->andWhere('deleted')->eq(0)->fetch('count');
$data['stories'] = (int)$this->dao->select('count(*) AS count')->from(TABLE_STORY)->where('assignedTo')->eq($this->app->user->account)->andWhere('deleted')->eq(0)->fetch('count');
$data['projects'] = (int)$this->dao->select('count(*) AS count')->from(TABLE_PROJECT)->where('id')->in(array_keys($projects))->andWhere("(status='wait' or status='doing')")->andWhere('deleted')->eq(0)->fetch('count');
$data['products'] = (int)$this->dao->select('count(*) AS count')->from(TABLE_PRODUCT)->where('status')->ne('closed')->andWhere('id')->in(array_keys($products))->andWhere('deleted')->eq(0)->fetch('count');
$data['projects'] = (int)$this->dao->select('count(*) AS count')->from(TABLE_PROJECT)
->where("(status='wait' or status='doing')")
->beginIF(!$this->app->user->admin)->andWhere('id')->in($this->app->user->view->projects)
->andWhere('deleted')->eq(0)
->fetch('count');
$data['products'] = (int)$this->dao->select('count(*) AS count')->from(TABLE_PRODUCT)
->where('status')->ne('closed')
->beginIF(!$this->app->user->admin)->andWhere('id')->in($this->app->user->view->products)
->andWhere('deleted')->eq(0)
->fetch('count');
$today = date('Y-m-d');
$data['delayTask'] = (int)$this->dao->select('count(*) AS count')->from(TABLE_TASK)
@@ -182,8 +187,8 @@ class blockModel extends model
->andWhere('deleted')->eq(0)
->fetch('count');
$data['delayProject'] = (int)$this->dao->select('count(*) AS count')->from(TABLE_PROJECT)
->where('id')->in(array_keys($projects))
->andWhere('status')->in('wait,doing')
->where('status')->in('wait,doing')
->beginIF(!$this->app->user->admin)->andWhere('id')->in($this->app->user->view->projects)
->andWhere('end')->lt($today)
->andWhere('deleted')->eq(0)
->fetch('count');
+1 -1
View File
@@ -324,5 +324,5 @@ $config->bug->datatable->fieldList['lastEditedDate']['required'] = 'no';
$config->bug->datatable->fieldList['actions']['title'] = 'actions';
$config->bug->datatable->fieldList['actions']['fixed'] = 'right';
$config->bug->datatable->fieldList['actions']['width'] = '190';
$config->bug->datatable->fieldList['actions']['width'] = '150';
$config->bug->datatable->fieldList['actions']['required'] = 'yes';
+13 -9
View File
@@ -422,10 +422,9 @@ class bugModel extends model
*/
public function getPlanBugs($planID, $status = 'all', $orderBy = 'id_desc', $pager = null)
{
$projects = $this->loadModel('project')->getPairs('empty|withdelete');
$bugs = $this->dao->select('*')->from(TABLE_BUG)
->where('plan')->eq((int)$planID)
->andWhere('project')->in(array_keys($projects))
->beginIF(!$this->app->user->admin)->andWhere('project')->in($this->app->user->view->projects)->fi()
->beginIF($status != 'all')->andWhere('status')->in($status)->fi()
->andWhere('deleted')->eq(0)
->orderBy($orderBy)->page($pager)->fetchAll('id');
@@ -1313,10 +1312,9 @@ class bugModel extends model
public function getUserBugs($account, $type = 'assignedTo', $orderBy = 'id_desc', $limit = 0, $pager = null)
{
if(!$this->loadModel('common')->checkField(TABLE_BUG, $type)) return array();
$projects = $this->loadModel('project')->getPairs('empty|withdelete');
$bugs = $this->dao->select('*')->from(TABLE_BUG)
$bugs = $this->dao->select('*')->from(TABLE_BUG)
->where('deleted')->eq(0)
->andWhere('project')->in(array_keys($projects))
->beginIF(!$this->app->user->admin)->andWhere('project')->in($this->app->user->view->projects)->fi()
->beginIF($type != 'all')->andWhere("`$type`")->eq($account)->fi()
->orderBy($orderBy)
->beginIF($limit > 0)->limit($limit)->fi()
@@ -1459,11 +1457,10 @@ class bugModel extends model
*/
public function getProductBugPairs($productID)
{
$projects = $this->loadModel('project')->getPairs('empty|withdelete');
$bugs = array('' => '');
$data = $this->dao->select('id, title')->from(TABLE_BUG)
->where('product')->eq((int)$productID)
->andWhere('project')->in(array_keys($projects))
->beginIF(!$this->app->user->admin)->andWhere('project')->in($this->app->user->view->projects)->fi()
->andWhere('deleted')->eq(0)
->orderBy('id desc')
->fetchAll();
@@ -2584,9 +2581,17 @@ class bugModel extends model
}
break;
case 'assignedTo':
$btnTextClass = '';
$assignedToText = !empty($bug->assignedTo) ? zget($users, $bug->assignedTo) : $this->lang->bug->noAssigned;
$btnTextClass = 'text-primary';
if($bug->assignedTo == $account) $btnTextClass = 'text-red';
echo "<span class='{$btnTextClass}'>" . zget($users, $bug->assignedTo) . "</span>";
$btnClass = $assignedToText == 'closed' ? ' disabled' : '';
$btnClass = "iframe btn btn-icon-left btn-sm {$btnClass}";
$assignToLink = helper::createLink('bug', 'assignTo', "bugID=$bug->id", '', true);
$assignToHtml = html::a($assignToLink, "<i class='icon icon-hand-right'></i> <span class='{$btnTextClass}'>{$assignedToText}</span>", '', "class='$btnClass'");
echo !common::hasPriv('bug', 'assignTo') ? "<span style='padding-left:25px;' class='{$btnTextClass}'>{$assignedToText}</span>" : $assignToHtml;
break;
case 'assignedDate':
echo substr($bug->assignedDate, 5, 11);
@@ -2620,7 +2625,6 @@ class bugModel extends model
break;
case 'actions':
$params = "bugID=$bug->id";
common::printIcon('bug', 'assignTo', $params, $bug, 'list', '', '', 'iframe', true);
common::printIcon('bug', 'confirmBug', $params, $bug, 'list', 'confirm', '', 'iframe', true);
common::printIcon('bug', 'resolve', $params, $bug, 'list', 'checked', '', 'iframe', true);
common::printIcon('bug', 'close', $params, $bug, 'list', '', '', 'iframe', true);
+1 -1
View File
@@ -591,7 +591,7 @@ class productModel extends model
->where('t1.product')->eq((int)$productID)
->beginIF($branch)->andWhere('t1.branch')->in($branch)->fi()
->beginIF(!$this->app->user->admin)->andWhere('t2.id')->in($this->app->user->view->projects)->fi()
->orderBy('t1.project desc')
->andWhere('t2.deleted')->eq(0)
->fetchAll();
foreach($datas as $data)
+1 -1
View File
@@ -193,5 +193,5 @@ $config->story->datatable->fieldList['caseCount']['name'] = $lang->story->ca
$config->story->datatable->fieldList['actions']['title'] = 'actions';
$config->story->datatable->fieldList['actions']['fixed'] = 'right';
$config->story->datatable->fieldList['actions']['width'] = '190';
$config->story->datatable->fieldList['actions']['width'] = '150';
$config->story->datatable->fieldList['actions']['required'] = 'yes';
+1 -1
View File
@@ -197,5 +197,5 @@ $config->task->datatable->fieldList['lastEditedDate']['required'] = 'no';
$config->task->datatable->fieldList['actions']['title'] = 'actions';
$config->task->datatable->fieldList['actions']['fixed'] = 'right';
$config->task->datatable->fieldList['actions']['width'] = '180';
$config->task->datatable->fieldList['actions']['width'] = '130';
$config->task->datatable->fieldList['actions']['required'] = 'yes';
+13 -3
View File
@@ -2450,8 +2450,20 @@ class taskModel extends model
case 'assignedTo':
$btnTextClass = '';
$assignedToText = zget($users, $task->assignedTo);
if(empty($task->assignedTo))
{
$btnTextClass = 'text-primary';
$assignedToText = $this->lang->task->noAssigned;
}
if($task->assignedTo == $account) $btnTextClass = 'text-red';
echo "<span class='{$btnTextClass}'>{$assignedToText}</span>";
$btnClass = $assignedToText == 'closed' ? ' disabled' : '';
$btnClass = "iframe btn btn-icon-left btn-sm {$btnClass}";
$assignToLink = helper::createLink('task', 'assignTo', "projectID=$task->project&taskID=$task->id", '', true);
$assignToHtml = html::a($assignToLink, "<i class='icon icon-hand-right'></i> <span class='{$btnTextClass}'>{$assignedToText}</span>", '', "class='$btnClass'");
echo !common::hasPriv('task', 'assignTo') ? "<span style='padding-left:25px;' class='{$btnTextClass}'>{$assignedToText}</span>" : $assignToHtml;
break;
case 'assignedDate':
echo substr($task->assignedDate, 5, 11);
@@ -2512,8 +2524,6 @@ class taskModel extends model
break;
}
common::printIcon('task', 'assignTo', "projectID=$task->project&taskID=$task->id", $task, 'list', '', '', 'iframe', true);
if($task->status == 'wait') common::printIcon('task', 'start', "taskID=$task->id", $task, 'list', '', '', 'iframe', true);
if($task->status == 'pause') common::printIcon('task', 'restart', "taskID=$task->id", $task, 'list', '', '', 'iframe', true);
if($task->status == 'done' or $task->status == 'cancel' or $task->status == 'closed') common::printIcon('task', 'close', "taskID=$task->id", $task, 'list', '', '', 'iframe', true);
+1 -1
View File
@@ -204,6 +204,6 @@ $config->testcase->datatable->fieldList['stepNumber']['name'] = $lang->testc
$config->testcase->datatable->fieldList['actions']['title'] = 'actions';
$config->testcase->datatable->fieldList['actions']['fixed'] = 'right';
$config->testcase->datatable->fieldList['actions']['width'] = '190';
$config->testcase->datatable->fieldList['actions']['width'] = '150';
$config->testcase->datatable->fieldList['actions']['required'] = 'yes';
$config->testcase->datatable->fieldList['actions']['sort'] = 'no';
+2
View File
@@ -2428,6 +2428,8 @@ class upgradeModel extends model
}
}
}
$this->dao->delete()->from(TABLE_CONFIG)->where('module')->eq('common')->andWhere('section')->eq('customMenu')->andWhere('key')->eq('full_project')->exec();
return !dao::isError();
}
+12 -1
View File
@@ -10,4 +10,15 @@
*/
/* Finish task #4751. */
.hide-sidebar #sidebar .cell {display:none;}
.hide-sidebar #sidebar .cell{display:none;}
/* 调整每个创建页面的宽度*/
.main-content{padding:30px;}
#nextPage, #prevPage{background-color:#909090;color:#fff}
.table-header.fixed-right>.btn-toolbar{top:0px;}
.c-assignedTo .icon-hand-right {opacity:0;}
.c-assignedTo a:hover .icon-hand-right {opacity:1;}
.main-table tbody>tr:nth-child(odd) .c-assignedTo .btn{background-color:#f5f5f5;}
.main-table tbody>tr:hover .c-assignedTo .btn {background-color:#e9f2fb;}
.main-table tbody>tr>td.col-hover.c-assignedTo .btn {background-color:#e9f2fb;}
.main-table thead>tr>th.c-assignedTo {padding-left:35px;}