* Refactor project statistic block of waterfall project.
This commit is contained in:
@@ -5,6 +5,11 @@
|
||||
|
||||
.projectstatistic-block .project-statistic-table table {width: 100%; border-collapse: separate; border-spacing: 0 1rem; padding-right: 1rem;}
|
||||
.projectstatistic-block .project-statistic-table table tr:first-child {background: url(static/svg/arrow-step1-grey.svg) center no-repeat; background-size: cover;}
|
||||
.projectstatistic-block .project-statistic-table table th {padding-right: 0px; width: 50%; margin-top: 1rem;}
|
||||
.projectstatistic-block .project-statistic-table table td {padding-left: 0px; width: 50%; margin-top: 1rem;}
|
||||
.projectstatistic-block .project-statistic-table table th {padding-right: 0px; margin-top: 1rem;}
|
||||
.projectstatistic-block .project-statistic-table table td {padding-left: 0px; margin-top: 1rem;}
|
||||
.projectstatistic-block .tab-pane .nav-tabs>.nav-item>a:after {border-bottom: none;}
|
||||
.projectstatistic-block .scrum table th, .projectstatistic-block .scrum table td {width: 50%}
|
||||
.projectstatistic-block .progress-circle text {font-size: 35px;}
|
||||
.projectstatistic-block .progress-circle .progress-text {position: relative;}
|
||||
.projectstatistic-block.block-long .progress-circle .progress-text {top: -65px;}
|
||||
.projectstatistic-block.block-sm .progress-circle .progress-text {top: -60px;}
|
||||
|
||||
@@ -557,6 +557,13 @@ $lang->block->projectstatistic->existIssues = 'Existing Issues:';
|
||||
$lang->block->projectstatistic->lastestExecution = 'Lastest Execution';
|
||||
$lang->block->projectstatistic->projectClosed = "{$lang->projectCommon} has been closed.";
|
||||
$lang->block->projectstatistic->longTimeProject = "Long Time {$lang->projectCommon}";
|
||||
$lang->block->projectstatistic->totalProgress = 'Total Progress';
|
||||
$lang->block->projectstatistic->totalProgressTip = 'Total Progress = Consumed Man Hours/(Consumed Man Hours + Left Man Hours)';
|
||||
$lang->block->projectstatistic->sv = 'Schedule Variance(SV)';
|
||||
$lang->block->projectstatistic->pv = 'Planned Value(PV)';
|
||||
$lang->block->projectstatistic->ev = 'Earned Value(EV)';
|
||||
$lang->block->projectstatistic->cv = 'Cost Variance(CV)';
|
||||
$lang->block->projectstatistic->ac = 'Actual Cost(AC)';
|
||||
|
||||
$lang->block->productoverview = new stdclass();
|
||||
$lang->block->productoverview->totalProductCount = 'Total Product Count';
|
||||
|
||||
@@ -557,6 +557,13 @@ $lang->block->projectstatistic->existIssues = 'Existing Issues:';
|
||||
$lang->block->projectstatistic->lastestExecution = 'Lastest Execution';
|
||||
$lang->block->projectstatistic->projectClosed = "{$lang->projectCommon} has been closed.";
|
||||
$lang->block->projectstatistic->longTimeProject = "Long Time {$lang->projectCommon}";
|
||||
$lang->block->projectstatistic->totalProgress = 'Total Progress';
|
||||
$lang->block->projectstatistic->totalProgressTip = 'Total Progress = Consumed Man Hours/(Consumed Man Hours + Left Man Hours)';
|
||||
$lang->block->projectstatistic->sv = 'Schedule Variance(SV)';
|
||||
$lang->block->projectstatistic->pv = 'Planned Value(PV)';
|
||||
$lang->block->projectstatistic->ev = 'Earned Value(EV)';
|
||||
$lang->block->projectstatistic->cv = 'Cost Variance(CV)';
|
||||
$lang->block->projectstatistic->ac = 'Actual Cost(AC)';
|
||||
|
||||
$lang->block->productoverview = new stdclass();
|
||||
$lang->block->productoverview->totalProductCount = 'Total Product Count';
|
||||
|
||||
@@ -557,6 +557,13 @@ $lang->block->projectstatistic->existIssues = 'Existing Issues:';
|
||||
$lang->block->projectstatistic->lastestExecution = 'Lastest Execution';
|
||||
$lang->block->projectstatistic->projectClosed = "{$lang->projectCommon} has been closed.";
|
||||
$lang->block->projectstatistic->longTimeProject = "Long Time {$lang->projectCommon}";
|
||||
$lang->block->projectstatistic->totalProgress = 'Total Progress';
|
||||
$lang->block->projectstatistic->totalProgressTip = 'Total Progress = Consumed Man Hours/(Consumed Man Hours + Left Man Hours)';
|
||||
$lang->block->projectstatistic->sv = 'Schedule Variance(SV)';
|
||||
$lang->block->projectstatistic->pv = 'Planned Value(PV)';
|
||||
$lang->block->projectstatistic->ev = 'Earned Value(EV)';
|
||||
$lang->block->projectstatistic->cv = 'Cost Variance(CV)';
|
||||
$lang->block->projectstatistic->ac = 'Actual Cost(AC)';
|
||||
|
||||
$lang->block->productoverview = new stdclass();
|
||||
$lang->block->productoverview->totalProductCount = 'Total Product Count';
|
||||
|
||||
@@ -559,6 +559,13 @@ $lang->block->projectstatistic->existIssues = '存在问题:';
|
||||
$lang->block->projectstatistic->lastestExecution = '最新执行';
|
||||
$lang->block->projectstatistic->projectClosed = "{$lang->projectCommon}已关闭";
|
||||
$lang->block->projectstatistic->longTimeProject = "长期{$lang->projectCommon}";
|
||||
$lang->block->projectstatistic->totalProgress = '总进度';
|
||||
$lang->block->projectstatistic->totalProgressTip = '总进度=已消耗工时/(已消耗工时+剩余工时)';
|
||||
$lang->block->projectstatistic->sv = '进度偏差率(SV)';
|
||||
$lang->block->projectstatistic->pv = '计划完成(PV)';
|
||||
$lang->block->projectstatistic->ev = '实际完成(EV)';
|
||||
$lang->block->projectstatistic->cv = '成本偏差率(CV)';
|
||||
$lang->block->projectstatistic->ac = '实际花费(AC)';
|
||||
|
||||
$lang->block->productoverview = new stdclass();
|
||||
$lang->block->productoverview->totalProductCount = '产品总数';
|
||||
|
||||
@@ -113,7 +113,7 @@ foreach($projects as $project)
|
||||
}
|
||||
$cells[] = cell
|
||||
(
|
||||
setClass('flex-1 pt-4 project-statistic-table' . (($module != 'cost' && $longBlock) || ($module != 'task' && $module != 'cost' && !$longBlock) ? ' border-l pl-4 ' : '') . (!$longBlock && $module != 'cost' && $module != 'story'? ' border-t' : '')),
|
||||
setClass('flex-1 pt-4 project-statistic-table scrum' . (($module != 'cost' && $longBlock) || ($module != 'task' && $module != 'cost' && !$longBlock) ? ' border-l pl-4 ' : '') . (!$longBlock && $module != 'cost' && $module != 'story'? ' border-t' : '')),
|
||||
set::width($longBlock ? '25%' : '50%'),
|
||||
div
|
||||
(
|
||||
@@ -124,10 +124,285 @@ foreach($projects as $project)
|
||||
$lang->block->projectstatistic->{$module}
|
||||
),
|
||||
),
|
||||
tableData($cellItems),
|
||||
tableData
|
||||
(
|
||||
set::width('100%'),
|
||||
$cellItems
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$cells[] = cell
|
||||
(
|
||||
setClass('flex flex-wrap items-center progress-circle pt-6'),
|
||||
set::width($longBlock ? '36%' : '100%'),
|
||||
div
|
||||
(
|
||||
setClass('flex justify-center w-full'),
|
||||
zui::progressCircle
|
||||
(
|
||||
set('percent', $project->progress),
|
||||
set('size', 150),
|
||||
set('circleWidth', 10),
|
||||
set('text', "{$project->progress}%"),
|
||||
set('textY', 70),
|
||||
set('textStyle', 'font-size: 35px;'),
|
||||
),
|
||||
),
|
||||
div
|
||||
(
|
||||
setClass('flex justify-center w-full'),
|
||||
span
|
||||
(
|
||||
setClass('text-gray text-md progress-text'),
|
||||
$lang->block->projectstatistic->totalProgress,
|
||||
icon
|
||||
(
|
||||
setClass('pl-1'),
|
||||
set('data-toggle', 'tooltip'),
|
||||
set('href', 'totalProgressTooltip'),
|
||||
'help'
|
||||
),
|
||||
),
|
||||
div
|
||||
(
|
||||
setClass('tooltip z-50 shadow bg-white text-gray leading-6'),
|
||||
set::id('totalProgressTooltip'),
|
||||
$lang->block->projectstatistic->totalProgressTip
|
||||
),
|
||||
)
|
||||
);
|
||||
$cells[] = cell
|
||||
(
|
||||
setClass('flex-1 pt-4 project-statistic-table px-4' . ($longBlock ? ' border-l' : '')),
|
||||
set::width($longBlock ? '32%' : '50%'),
|
||||
div
|
||||
(
|
||||
setClass('px-2'),
|
||||
span
|
||||
(
|
||||
setClass('font-bold'),
|
||||
$lang->project->progress
|
||||
),
|
||||
),
|
||||
h::table
|
||||
(
|
||||
setClass('table-data'),
|
||||
h::tbody
|
||||
(
|
||||
h::tr
|
||||
(
|
||||
h::th
|
||||
(
|
||||
setClass('py-1.5 pr-2 font-normal nowrap items-center text-right'),
|
||||
$lang->block->projectstatistic->sv,
|
||||
icon
|
||||
(
|
||||
setClass('pl-1.5'),
|
||||
set('data-toggle', 'tooltip'),
|
||||
set('href', 'svTooltip'),
|
||||
'help'
|
||||
),
|
||||
':',
|
||||
div
|
||||
(
|
||||
setClass('tooltip z-50 shadow bg-white text-gray leading-6'),
|
||||
set::id('svTooltip'),
|
||||
'svTooltip'
|
||||
),
|
||||
),
|
||||
h::td
|
||||
(
|
||||
setClass('py-1.5 pl-2'),
|
||||
span
|
||||
(
|
||||
setClass('font-bold text-black mr-1'),
|
||||
zget($project, 'sv', 0) . $lang->percent,
|
||||
),
|
||||
),
|
||||
),
|
||||
h::tr
|
||||
(
|
||||
h::th
|
||||
(
|
||||
setClass('py-1.5 pr-2 font-normal nowrap items-center text-right'),
|
||||
$lang->block->projectstatistic->pv,
|
||||
icon
|
||||
(
|
||||
setClass('pl-1.5'),
|
||||
set('data-toggle', 'tooltip'),
|
||||
set('href', 'pvTooltip'),
|
||||
'help'
|
||||
),
|
||||
':',
|
||||
div
|
||||
(
|
||||
setClass('tooltip z-50 shadow bg-white text-gray leading-6'),
|
||||
set::id('pvTooltip'),
|
||||
'pvTooltip'
|
||||
),
|
||||
),
|
||||
h::td
|
||||
(
|
||||
setClass('py-1.5 pl-2'),
|
||||
span
|
||||
(
|
||||
setClass('font-bold text-black mr-1'),
|
||||
zget($project, 'pv', 0) . $lang->percent,
|
||||
),
|
||||
),
|
||||
),
|
||||
h::tr
|
||||
(
|
||||
h::th
|
||||
(
|
||||
setClass('py-1.5 pr-2 font-normal nowrap items-center text-right'),
|
||||
$lang->block->projectstatistic->ev,
|
||||
icon
|
||||
(
|
||||
setClass('pl-1.5'),
|
||||
set('data-toggle', 'tooltip'),
|
||||
set('href', 'evTooltip'),
|
||||
'help'
|
||||
),
|
||||
':',
|
||||
div
|
||||
(
|
||||
setClass('tooltip z-50 shadow bg-white text-gray leading-6'),
|
||||
set::id('evTooltip'),
|
||||
'evTooltip'
|
||||
),
|
||||
),
|
||||
h::td
|
||||
(
|
||||
setClass('py-1.5 pl-2'),
|
||||
span
|
||||
(
|
||||
setClass('font-bold text-black mr-1'),
|
||||
zget($project, 'ev', 0) . $lang->percent,
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
);
|
||||
$cells[] = cell
|
||||
(
|
||||
setClass('flex-1 pt-4 project-statistic-table px-4 border-l'),
|
||||
set::width($longBlock ? '32%' : '50%'),
|
||||
div
|
||||
(
|
||||
setClass('px-2'),
|
||||
span
|
||||
(
|
||||
setClass('font-bold'),
|
||||
$lang->project->progress
|
||||
),
|
||||
),
|
||||
h::table
|
||||
(
|
||||
setClass('table-data'),
|
||||
h::tbody
|
||||
(
|
||||
h::tr
|
||||
(
|
||||
h::th
|
||||
(
|
||||
setClass('py-1.5 pr-2 font-normal nowrap items-center text-right'),
|
||||
$lang->block->projectstatistic->cv,
|
||||
icon
|
||||
(
|
||||
setClass('pl-1.5'),
|
||||
set('data-toggle', 'tooltip'),
|
||||
set('href', 'cvTooltip'),
|
||||
'help'
|
||||
),
|
||||
':',
|
||||
div
|
||||
(
|
||||
setClass('tooltip z-50 shadow bg-white text-gray leading-6'),
|
||||
set::id('cvTooltip'),
|
||||
'cvTooltip'
|
||||
),
|
||||
),
|
||||
h::td
|
||||
(
|
||||
setClass('py-1.5 pl-2'),
|
||||
span
|
||||
(
|
||||
setClass('font-bold text-black mr-1'),
|
||||
zget($project, 'cv', 0) . $lang->percent,
|
||||
),
|
||||
),
|
||||
),
|
||||
h::tr
|
||||
(
|
||||
h::th
|
||||
(
|
||||
setClass('py-1.5 pr-2 font-normal nowrap items-center text-right'),
|
||||
$lang->block->projectstatistic->ev,
|
||||
icon
|
||||
(
|
||||
setClass('pl-1.5'),
|
||||
set('data-toggle', 'tooltip'),
|
||||
set('href', 'evTooltip'),
|
||||
'help'
|
||||
),
|
||||
':',
|
||||
div
|
||||
(
|
||||
setClass('tooltip z-50 shadow bg-white text-gray leading-6'),
|
||||
set::id('evTooltip'),
|
||||
'evTooltip'
|
||||
),
|
||||
),
|
||||
h::td
|
||||
(
|
||||
setClass('py-1.5 pl-2'),
|
||||
span
|
||||
(
|
||||
setClass('font-bold text-black mr-1'),
|
||||
zget($project, 'ev', 0) . $lang->percent,
|
||||
),
|
||||
),
|
||||
),
|
||||
h::tr
|
||||
(
|
||||
h::th
|
||||
(
|
||||
setClass('py-1.5 pr-2 font-normal nowrap items-center text-right'),
|
||||
$lang->block->projectstatistic->ac,
|
||||
icon
|
||||
(
|
||||
setClass('pl-1.5'),
|
||||
set('data-toggle', 'tooltip'),
|
||||
set('href', 'acTooltip'),
|
||||
'help'
|
||||
),
|
||||
':',
|
||||
div
|
||||
(
|
||||
setClass('tooltip z-50 shadow bg-white text-gray leading-6'),
|
||||
set::id('acTooltip'),
|
||||
'acTooltip'
|
||||
),
|
||||
),
|
||||
h::td
|
||||
(
|
||||
setClass('py-1.5 pl-2'),
|
||||
span
|
||||
(
|
||||
setClass('font-bold text-black mr-1'),
|
||||
zget($project, 'ac', 0) . $lang->percent,
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
$projectInfo = div
|
||||
(
|
||||
|
||||
Reference in New Issue
Block a user