report.html.php 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126
  1. <?php
  2. /**
  3. * The report view file of cm module of ZenTaoPMS.
  4. * @copyright Copyright 2009-2024 禅道软件(青岛)有限公司(ZenTao Software (Qingdao) Co., Ltd. www.zentao.net)
  5. * @license ZPL(https://zpl.pub/page/zplv12.html) or AGPL(https://www.gnu.org/licenses/agpl-3.0.en.html)
  6. * @author Shujie Tian <tianshujie@chandao.com>
  7. * @package cm
  8. * @link https://www.zentao.net
  9. */
  10. namespace zin;
  11. if(!isInModal() && !$this->session->notHead)
  12. {
  13. toolbar
  14. (
  15. setClass('flex justify-between w-full'),
  16. btn($lang->goback, set::icon('back'), setClass('ghost'), set::url(createLink('cm', 'browse', "projectID={$projectID}"))),
  17. hasPriv('cm', 'exportReport') ? btn
  18. (
  19. set::text($lang->export),
  20. set::icon('export'),
  21. set::className('ghost'),
  22. setData(array('toggle' => 'modal', 'size' => 'sm')),
  23. set::url(createLink('cm', 'exportReport', "projectID={$projectID}"))
  24. ) : null
  25. );
  26. }
  27. $auditTrList = array();
  28. foreach($report['audit'] as $type => $audit)
  29. {
  30. $objects = '';
  31. foreach(explode(',', $audit->category) as $category) $objects .= zget($categories, $category) . ',';
  32. $auditTrList[] = h::tr
  33. (
  34. h::td(set::colspan('3'), $audit->title),
  35. h::td(set::colspan('3'), $audit->version),
  36. h::td(set::colspan('3'), trim($objects, ',')),
  37. h::td(set::colspan('3'), !helper::isZeroDate($audit->createdDate) ? $audit->createdDate : ''),
  38. h::td(set::colspan('1'), zget($users, $audit->createdBy))
  39. );
  40. }
  41. $issueTrList = array();
  42. foreach($report['issue'] as $issue)
  43. {
  44. $issueTrList[] = h::tr
  45. (
  46. h::td($issue->id),
  47. h::td(set::colspan('2'), $issue->title),
  48. h::td(set::colspan('2'), $issue->reviewTitle),
  49. h::td(!helper::isZeroDate($issue->createdDate) ? $issue->createdDate : ''),
  50. h::td(zget($users, $issue->createdBy)),
  51. h::td($issue->opinion),
  52. h::td(!helper::isZeroDate($issue->opinionDate) ? $issue->opinionDate : ''),
  53. h::td(zget($lang->reviewissue->resolutionList, $issue->resolution)),
  54. h::td(!helper::isZeroDate($issue->resolutionDate) ? $issue->resolutionDate : ''),
  55. h::td(zget($users, $issue->resolutionBy)),
  56. h::td(zget($lang->reviewissue->statusList, $issue->status))
  57. );
  58. }
  59. panel
  60. (
  61. h::table
  62. (
  63. setClass('table bordered table-fixed'),
  64. h::tbody
  65. (
  66. h::tr(h::td(setClass('text-center'), set::colspan('12'), h5($lang->cm->baselineReport))),
  67. h::tr
  68. (
  69. h::th($lang->cm->projectID, set::colspan('2')),
  70. h::td(set::colspan('2'), $report['project']->id),
  71. h::th(set::colspan('2'),$lang->cm->release),
  72. h::td(set::colspan('2'), zget($lang->project->modelList, $report['project']->model)),
  73. h::th($lang->cm->approver, set::colspan('2')),
  74. h::td(set::colspan('2'))
  75. ),
  76. h::tr
  77. (
  78. h::th($lang->cm->projectName, set::colspan('2')),
  79. h::td(set::colspan('6'), $report['project']->name),
  80. h::th($lang->cm->compiling, set::colspan('2')),
  81. h::td(set::colspan('2'), zget($users, $report['project']->PM))
  82. ),
  83. h::tr
  84. (
  85. setClass('text-center'),
  86. h::td(setClass('text-center'), set::colspan('12'), h5($lang->cm->changeDesc))
  87. ),
  88. h::tr
  89. (
  90. h::td(setClass('font-bold'), set::colspan('3'), $lang->cm->baselineItem),
  91. h::td(setClass('font-bold'), set::colspan('2'), $lang->cm->currentVersion),
  92. h::td(setClass('font-bold'), set::colspan('3'), $lang->cm->configItemName),
  93. h::td(setClass('font-bold'), set::colspan('2'), $lang->cm->releaseDate),
  94. h::td(setClass('font-bold'), set::colspan('2'), $lang->cm->publisher)
  95. ),
  96. $auditTrList,
  97. h::tr
  98. (
  99. h::td(setClass('font-bold'), set::colspan('6'), $lang->cm->configAdmin),
  100. h::td(setClass('font-bold'), set::colspan('4'), $lang->cm->solutionMan),
  101. h::td(setClass('font-bold'), $lang->cm->confManagement, set::colspan('2'))
  102. ),
  103. h::tr
  104. (
  105. h::td(setClass('font-bold'), $lang->cm->issueID),
  106. h::td(setClass('font-bold'), $lang->cm->issueDesc),
  107. h::td(setClass('font-bold'), $lang->cm->baselineAudit, $app->getClientLang() == 'en' ? set::style(array('padding-left' => '0.5rem', 'padding-right' => '0.5rem')) : null),
  108. h::td(setClass('font-bold'), $lang->cm->discoveryDate),
  109. h::td(setClass('font-bold'), $lang->cm->personLiable),
  110. h::td(setClass('font-bold'), $lang->cm->proposedScheme),
  111. h::td(setClass('font-bold'), $lang->cm->proposedDate),
  112. h::td(setClass('font-bold'), $lang->cm->solutionResult),
  113. h::td(setClass('font-bold'), $lang->cm->resolvingDate),
  114. h::td(setClass('font-bold'), $lang->cm->resolvingBy),
  115. h::td(set::colspan('2'), setClass('font-bold'), $lang->cm->currentState)
  116. ),
  117. $issueTrList
  118. )
  119. )
  120. );
  121. $this->session->notHead ? render('fragment') : render();