report.html.php 8.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168
  1. <?php include $app->getModuleRoot() . 'common/view/header.html.php';?>
  2. <?php $browseLink = $this->session->reviewList ? $this->session->reviewList : inlink('browse', "projectID={$review->project}");?>
  3. <div id="mainMenu" class="clearfix">
  4. <div class="btn-toolbar pull-left">
  5. <?php echo html::a($browseLink, '<i class="icon icon-back icon-sm"></i>' . $lang->goback, '', 'class="btn btn-secondary"')?>
  6. <div class="divider"></div>
  7. <div class="page-title">
  8. <span class="label label-id"><?php echo $review->id?></span>
  9. <span class="text"><?php echo $review->title . '<i class="icon-angle-right"></i> ' . $lang->review->report->common?></span>
  10. </div>
  11. <div class='input-control space w-150px'>
  12. <?php
  13. $n = 0;
  14. foreach($approvalIDList as &$approvalItem)
  15. {
  16. $n++;
  17. $approvalItem = sprintf($lang->review->selectApprovalText, $n);
  18. }
  19. ?>
  20. <?php echo html::select('approval', $approvalIDList, $approvalID, "onchange='changeReview($reviewID, this.value)' class='form-control chosen'");?>
  21. </div>
  22. </div>
  23. </div>
  24. <div class='main-row' id='mainContent'>
  25. <div class='main-col main-table'>
  26. <div class='cell'>
  27. <table class='table table-borderless'>
  28. <tr><th class='text-center' colspan='8' style="font-size:15px;"><?php echo $lang->review->explain;?></th></tr>
  29. <tr>
  30. <th colspan='2'><?php echo $lang->review->object;?></th>
  31. <td colspan='2'><?php echo zget($lang->baseline->objectList, $review->category);?></td>
  32. <th colspan='2'><?php echo $lang->review->reviewerCount;?></th>
  33. <td colspan='2'><?php echo $reviewerCount;?></td>
  34. </tr>
  35. <tr>
  36. <th colspan='2'><?php echo $lang->review->reviewedDate;?></th>
  37. <td colspan='2'><?php echo isset($approvalNode[0]->date) and !helper::isZeroDate($approvalNode[0]->date) ? $approvalNode[0]->date : '';?></td>
  38. <th colspan='2'><?php echo $lang->review->reviewedHours;?></th>
  39. <td colspan='2'>
  40. <?php
  41. $objectScale = (float)$objectScale;
  42. $consumed = 0;
  43. $accountConsumed = array();
  44. unset($efforts['typeList']);
  45. foreach($efforts as $effort)
  46. {
  47. $accountConsumed[$effort->account][] = $effort->consumed;
  48. $consumed += empty($effort->consumed) ? 0 : $effort->consumed;
  49. }
  50. echo floor($consumed);
  51. ?>
  52. </td>
  53. </tr>
  54. <tr>
  55. <th colspan='2'>
  56. <div class='th-flex'>
  57. <div><?php echo $lang->review->issueCount;?></div>
  58. <div class='icon-align-center'><a data-toggle='tooltip' class='text-help' title='<?php echo $lang->review->issueCountTip;?>'><i class='icon-help'></i></a></div>
  59. </div>
  60. </th>
  61. <td colspan='2'><?php echo count($issues);?></td>
  62. <th colspan='2'>
  63. <div class='th-flex'>
  64. <div><?php echo $lang->review->objectScale;?></div>
  65. <div class='icon-align-center'><a data-toggle='tooltip' class='text-help' title='<?php echo $lang->review->objectScaleTip;?>'><i class='icon-help'></i></a></div>
  66. </div>
  67. </th>
  68. <td colspan='2'><?php echo round($objectScale, 2);?></td>
  69. </tr>
  70. <tr>
  71. <th colspan='2'>
  72. <div class='th-flex'>
  73. <div><?php echo $lang->review->issueRate;?></div>
  74. <div class='icon-align-center'><a data-toggle='tooltip' class='text-help' title='<?php echo $lang->review->issueRateTip;?>'><i class='icon-help'></i></a></div>
  75. </div>
  76. </th>
  77. <td colspan='2'><?php echo $objectScale == 0 ? 0 : round(count($issues) / $objectScale, 2);?></td>
  78. <th colspan='2'>
  79. <div class='th-flex'>
  80. <div><?php echo $lang->review->issueFoundRate;?></div>
  81. <div class='icon-align-center'><a data-toggle='tooltip' class='text-help' title='<?php echo $lang->review->issueFoundRateTip;?>'><i class='icon-help'></i></a></div>
  82. </div>
  83. </th>
  84. <td colspan='2'><?php echo $consumed == 0 ? 0 : round(count($issues) / $consumed, 2);?></td>
  85. </tr>
  86. </table>
  87. </div>
  88. <div class='cell'>
  89. <table class='table table-borderless'>
  90. <?php if(!empty($issues)):?>
  91. <tr>
  92. <th><?php echo $lang->idAB;?></th>
  93. <th colspan='2'><?php echo $lang->review->issues;?></th>
  94. <th colspan='2'><?php echo $lang->review->reviewer;?></th>
  95. <th colspan='5'><?php echo $lang->comment;?></th>
  96. </tr>
  97. <?php foreach($issues as $issue):?>
  98. <tr>
  99. <td><?php echo $issue->id;?></td>
  100. <td colspan='2'><?php echo $issue->title;?></td>
  101. <td colspan='2'><?php echo zget($users, $issue->createdBy);?></td>
  102. <td colspan='5' class="text-ellipsis" title='<?php echo strip_tags($issue->opinion);?>'><?php echo $issue->opinion;?></td>
  103. </tr>
  104. <?php endforeach;?>
  105. <?php endif;?>
  106. <?php if(!empty($approvalNode)):?>
  107. <table class='table table-borderless'>
  108. <tr>
  109. <th><?php echo $lang->review->reviewedDate;?></th>
  110. <th colspan='2'><?php echo $lang->review->reviewer;?></th>
  111. <th><?php echo $lang->review->reviewResult;?></th>
  112. <th><?php echo $lang->reviewresult->consumed;?></th>
  113. <th colspan='5'><?php echo $lang->review->finalOpinion;?></th>
  114. </tr>
  115. <?php foreach($approvalNode as $reviewItem):?>
  116. <?php if(empty($reviewItem->reviewedBy) or empty($accountConsumed[$reviewItem->reviewedBy])) continue;?>
  117. <tr>
  118. <td><?php echo !helper::isZeroDate($reviewItem->date) ? $reviewItem->date : '';?></td>
  119. <td colspan='2'><?php echo zget($users, $reviewItem->reviewedBy);?></td>
  120. <td><?php echo zget($lang->review->resultList, $reviewItem->result);?></td>
  121. <td><?php echo (!empty($accountConsumed[$reviewItem->reviewedBy]) and $reviewItem->result != 'ignore') ? array_shift($accountConsumed[$reviewItem->reviewedBy]) : 0;?></td>
  122. <td colspan='5' class="text-ellipsis finalOpinion" title=<?php echo strip_tags($reviewItem->opinion);?>><?php echo $reviewItem->opinion;?></td>
  123. </tr>
  124. <?php endforeach;?>
  125. <?php endif;?>
  126. <tr id="resultExplain">
  127. <th class='text-center' colspan='8'><?php echo $lang->review->resultExplain;?></th>
  128. <th class='text-center' colspan='2'><?php echo $lang->review->conclusion;?></th>
  129. </tr>
  130. <tr>
  131. <td colspan='8'><?php echo $lang->review->resultExplainList['pass'];?></td>
  132. <?php if(isset($approval->result)):?>
  133. <td rowspan='2' colspan='2' class="text-center status-<?php echo $approval->result;?>" style='background: #e3f2fd;'><?php echo zget($lang->review->resultList, $approval->result);?></td>
  134. <?php else:?>
  135. <?php $reviewResult = $review->result == 'pass' ? 'pass' : 'fail';?>
  136. <td rowspan='2' colspan='2' class="text-center status-<?php echo $reviewResult;?>" style='background: #e3f2fd;'><?php echo zget($lang->review->resultList, $reviewResult);?></td>
  137. <?php endif;?>
  138. </tr>
  139. <tr>
  140. <td colspan='8'><?php echo $lang->review->resultExplainList['fail'];?></td>
  141. </tr>
  142. <tr>
  143. <th colspan='2'><?php echo $lang->review->reportCreatedBy;?></th>
  144. <th colspan='2'><?php echo zget($users, $review->createdBy);?></th>
  145. <th colspan='2'><?php echo $lang->review->reportApprovedBy;?></th>
  146. <th colspan='2'>
  147. <?php
  148. foreach($reviewer as $account)
  149. {
  150. $account = trim($account);
  151. if(empty($account)) continue;
  152. echo zget($users, $account) . " &nbsp;";
  153. }
  154. ?>
  155. </th>
  156. </tr>
  157. </table>
  158. </div>
  159. </div>
  160. </div>
  161. <script>
  162. function changeReview(reviewID, approvalID)
  163. {
  164. location.href = createLink('review', 'report', 'reviewID=' + reviewID + '&approvalID=' + approvalID);
  165. }
  166. </script>
  167. <?php include $app->getModuleRoot() . 'common/view/footer.html.php';?>