executionteamblock.html.php 3.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. <?php if(empty($projects)): ?>
  2. <div class='empty-tip'><?php echo $lang->block->emptyTip;?></div>
  3. <?php else:?>
  4. <?php
  5. $maxTeamCount = 0;
  6. $maxConsumed = 0;
  7. ?>
  8. <div class='panel-body'>
  9. <div class='table-row'>
  10. <div class='table-col chart-titles'>
  11. <?php foreach($projects as $project):?>
  12. <?php
  13. $maxTeamCount = max($maxTeamCount, $project->teamCount);
  14. $maxConsumed = max($maxConsumed, $project->consumed);
  15. ?>
  16. <div class='chart-title text-ellipsis'><span><?php echo $project->name;?></span></div>
  17. <?php endforeach;?>
  18. </div>
  19. <div class='table-col chart-rows'>
  20. <div class='row'>
  21. <div class='col col-6 project-team'>
  22. <div class='chart-col-title strong'><?php echo $lang->program->teamCount;?></div>
  23. <?php foreach($projects as $project):?>
  24. <div class='chart-col-item'>
  25. <div class='progress'>
  26. <div class='progress-bar' style='width: <?php echo $maxTeamCount ? (100 * $project->teamCount / $maxTeamCount) : 0; ?>%'>
  27. <div class='progress-text'><?php echo $project->teamCount;?></div>
  28. </div>
  29. </div>
  30. </div>
  31. <?php endforeach;?>
  32. </div>
  33. <div class='col col-6 project-consumed'>
  34. <div class='chart-col-title strong'><?php echo $lang->task->consumed;?></div>
  35. <?php foreach($projects as $project):?>
  36. <div class='chart-col-item'>
  37. <div class='progress'>
  38. <div class='progress-bar' style='width: <?php echo $maxConsumed ? (100 * $project->consumed / $maxConsumed) : 0; ?>%'>
  39. <div class='progress-text'><?php echo $project->consumed;?></div>
  40. </div>
  41. </div>
  42. </div>
  43. <?php endforeach;?>
  44. </div>
  45. </div>
  46. </div>
  47. </div>
  48. <style>
  49. .block-projectteam .panel-body {margin-top: -10px}
  50. .chart-titles {width: 110px; padding-right: 10px; padding-top: 30px; position: relative; z-index: 1}
  51. .chart-rows {position: relative; z-index: 0}
  52. .chart-title {width: 100px; line-height: 20px; padding: 5px 0; height: 30px}
  53. .chart-title > span {background: #fff}
  54. .chart-col-title {line-height: 20px; margin-bottom: 10px; padding: 0 10px}
  55. .project-team, .project-consumed {padding: 0}
  56. .project-team {border-right: 1px solid #e5e8ec}
  57. .project-team > .chart-col-title {text-align: right}
  58. .chart-col-item {height: 30px; padding: 5px 0; position: relative}
  59. .chart-col-text {width: 50px; position: absolute; top: 5px; line-height: 20px; left: 0}
  60. .project-team .chart-col-item {padding-left: 50px; position: relative}
  61. .project-team .chart-col-item:before {position: absolute; content: ' '; z-index: 0; left: -100px; top: 14px; right: 0; border-top: 1px dotted #e5e8ec}
  62. .project-consumed .chart-col-item {padding-right: 50px}
  63. .chart-col-item .progress {background: none; border-radius: 0; overflow: visible; margin: 6px 0 0 0; position: relative; z-index: 1}
  64. .chart-col-item .progress > .progress-bar {border-radius: 0; position: relative; min-width: 1px}
  65. .project-team .chart-col-item .progress > .progress-bar {float: right; background-color: #39cfff}
  66. .chart-col-item .progress .progress-text {position: absolute; top: -6px; color: #333; width: 50px; line-height: 20px; white-space: nowrap; overflow: visible}
  67. .project-team .progress .progress-text {text-align: right; left: -50px; padding-right: 5px}
  68. .project-consumed .progress .progress-text {text-align: left; right: -50px; padding-left: 5px}
  69. </style>
  70. </div>
  71. <?php endif;?>