* finish task #2285.

This commit is contained in:
wangyidong
2015-09-02 13:13:58 +08:00
parent 34cbd724fd
commit bf21838118
6 changed files with 65 additions and 13 deletions

View File

@@ -266,6 +266,7 @@ $lang->resource->project->testtask = 'testtask';
$lang->resource->project->bug = 'bug';
$lang->resource->project->burn = 'burn';
$lang->resource->project->computeBurn = 'computeBurn';
$lang->resource->project->fixFirst = 'fixFirst';
$lang->resource->project->burnData = 'burnData';
$lang->resource->project->team = 'team';
$lang->resource->project->doc = 'doc';
@@ -302,17 +303,18 @@ $lang->project->methodOrder[95] = 'testtask';
$lang->project->methodOrder[100] = 'bug';
$lang->project->methodOrder[105] = 'burn';
$lang->project->methodOrder[110] = 'computeBurn';
$lang->project->methodOrder[115] = 'burnData';
$lang->project->methodOrder[120] = 'team';
$lang->project->methodOrder[125] = 'doc';
$lang->project->methodOrder[130] = 'dynamic';
$lang->project->methodOrder[135] = 'manageProducts';
$lang->project->methodOrder[140] = 'manageMembers';
$lang->project->methodOrder[145] = 'unlinkMember';
$lang->project->methodOrder[150] = 'linkStory';
$lang->project->methodOrder[155] = 'unlinkStory';
$lang->project->methodOrder[160] = 'batchUnlinkStory';
$lang->project->methodOrder[165] = 'updateOrder';
$lang->project->methodOrder[115] = 'fixFirst';
$lang->project->methodOrder[120] = 'burnData';
$lang->project->methodOrder[125] = 'team';
$lang->project->methodOrder[130] = 'doc';
$lang->project->methodOrder[135] = 'dynamic';
$lang->project->methodOrder[140] = 'manageProducts';
$lang->project->methodOrder[145] = 'manageMembers';
$lang->project->methodOrder[150] = 'unlinkMember';
$lang->project->methodOrder[155] = 'linkStory';
$lang->project->methodOrder[160] = 'unlinkStory';
$lang->project->methodOrder[165] = 'batchUnlinkStory';
$lang->project->methodOrder[170] = 'updateOrder';
/* Task. */
$lang->resource->task = new stdclass();
@@ -1073,3 +1075,5 @@ $lang->changelog['7.2'][] = 'custom-flow';
$lang->changelog['7.2'][] = 'group-manageView';
$lang->changelog['7.2'][] = 'product-updateOrder';
$lang->changelog['7.2'][] = 'project-updateOrder';
$lang->changelog['7.3'][] = 'project-fixFirst';

View File

@@ -795,6 +795,25 @@ class project extends control
$this->display();
}
/**
* Fix burn for first date.
*
* @param int $projectID
* @access public
* @return void
*/
public function fixFirst($projectID)
{
if($_POST)
{
$this->project->fixFirst($projectID);
die(js::reload('parent.parent'));
}
$this->view->project = $this->project->getById($projectID);
$this->display();
}
/**
* Browse team of a project.
*

View File

@@ -115,6 +115,7 @@ $lang->project->burn = 'Burndown';
$lang->project->baseline = 'Base Line';
$lang->project->computeBurn = 'Update';
$lang->project->burnData = 'Burndown data';
$lang->project->fixFirst = 'Fix first data';
$lang->project->team = 'Team';
$lang->project->doc = 'Doc';
$lang->project->manageProducts = 'Link ' . $lang->productCommon;
@@ -230,7 +231,8 @@ $lang->project->charts->burn->graph->rotateNames = 1;
$lang->project->charts->burn->graph->showValues = 0;
$lang->project->placeholder = new stdclass();
$lang->project->placeholder->code = "{$lang->projectCommon} code";
$lang->project->placeholder->code = "{$lang->projectCommon} code";
$lang->project->placeholder->totalLeft = 'Total left';
$lang->project->selectGroup = new stdclass();
$lang->project->selectGroup->doing = '(doing)';

View File

@@ -115,6 +115,7 @@ $lang->project->burn = '燃尽图';
$lang->project->baseline = '基准线';
$lang->project->computeBurn = '更新';
$lang->project->burnData = '燃尽图数据';
$lang->project->fixFirst = '修复首天值';
$lang->project->team = '团队成员';
$lang->project->doc = '文档列表';
$lang->project->manageProducts = '关联' . $lang->productCommon;
@@ -230,7 +231,8 @@ $lang->project->charts->burn->graph->rotateNames = 1;
$lang->project->charts->burn->graph->showValues = 0;
$lang->project->placeholder = new stdclass();
$lang->project->placeholder->code = '团队内部的简称';
$lang->project->placeholder->code = '团队内部的简称';
$lang->project->placeholder->totalLeft = '总剩余工时';
$lang->project->selectGroup = new stdclass();
$lang->project->selectGroup->doing = '(进行中)';

View File

@@ -1282,6 +1282,30 @@ class projectModel extends model
return $burns;
}
/**
* Fix burn for first day.
*
* @param int $projectID
* @access public
* @return void
*/
public function fixFirst($projectID)
{
$project = $this->getById($projectID);
$burn = $this->dao->select('*')->from(TABLE_BURN)->where('project')->eq($projectID)
->andWhere('date')->eq($project->begin)
->fetch();
$data = fixer::input('post')
->add('project', $projectID)
->add('date', $project->begin)
->add('consumed', empty($burn) ? 0 : $burn->consumed)
->get();
if(!is_numeric($data->left)) return false;
$this->dao->replace(TABLE_BURN)->data($data)->exec();
}
/**
* Get data of burn down chart.
*

View File

@@ -26,6 +26,7 @@
<?php
$weekend = ($type == 'noweekend') ? 'withweekend' : "noweekend";
echo html::a($this->createLink('project', 'burn', "projectID=$projectID&type=$weekend&interval=$interval"), $lang->project->$weekend, '', "class='btn btn-sm'");
common::printLink('project', 'fixFirst', "project=$project->id", $lang->project->fixFirst, '', "class='btn btn-sm iframe' data-width='500'");
common::printLink('project', 'computeBurn', 'reload=yes', $lang->project->computeBurn, 'hiddenwin', "title='{$lang->project->computeBurn}{$lang->project->burn}' class='btn btn-primary btn-sm' id='computeBurn'");
echo $lang->project->howToUpdateBurn;
?>