create.html.php 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198
  1. <?php
  2. /**
  3. * The create view file of company module of ZenTaoPMS.
  4. * @copyright Copyright 2009-2023 禅道软件(青岛)有限公司(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 Chenxuan Song <songchenxuan@easycorp.ltd>
  7. * @package metric
  8. * @link https://www.zentao.net
  9. */
  10. namespace zin;
  11. $fnGenerateAfterCreateRatio = function() use ($lang)
  12. {
  13. $afterCreateList = $lang->metric->afterCreateList;
  14. $hasImplementPriv = hasPriv('metric', 'implement');
  15. if(!$hasImplementPriv) unset($afterCreateList['implement']);
  16. $defaultValue = $hasImplementPriv ? 'implement' : 'back';
  17. return formGroup
  18. (
  19. set::width('1/2'),
  20. set::name('afterCreate'),
  21. set::label($lang->metric->afterCreate),
  22. set::control(array('type' => 'radioList', 'inline' => true)),
  23. set::items($afterCreateList),
  24. set::value($defaultValue)
  25. );
  26. };
  27. formPanel
  28. (
  29. detailHeader
  30. (
  31. to::title
  32. (
  33. entityLabel
  34. (
  35. setClass('text-xl font-black'),
  36. set::level(1),
  37. set::text($lang->metric->create)
  38. ),
  39. div
  40. (
  41. label
  42. (
  43. to::before
  44. (
  45. icon
  46. (
  47. setClass('warning-ghost margin-left8'),
  48. 'help'
  49. )
  50. ),
  51. set::text($lang->metric->tips->noticeUnchangeable),
  52. setClass('gray-200-pale')
  53. )
  54. )
  55. )
  56. ),
  57. formRow
  58. (
  59. formGroup
  60. (
  61. set::width('1/2'),
  62. set::label($lang->metric->scope),
  63. set::name('scope'),
  64. set::items($lang->metric->scopeList),
  65. set::value($scope),
  66. set::required(true)
  67. ),
  68. formGroup
  69. (
  70. set::width('1/2'),
  71. set::label($lang->metric->object),
  72. set::name('object'),
  73. set::items($lang->metric->objectList),
  74. set::value('program'),
  75. set::required(true)
  76. )
  77. ),
  78. formRow
  79. (
  80. formGroup
  81. (
  82. set::width('1/2'),
  83. set::label($lang->metric->purpose),
  84. set::name('purpose'),
  85. set::items($lang->metric->purposeList),
  86. set::value('scale'),
  87. set::required(true)
  88. ),
  89. formGroup
  90. (
  91. set::label($lang->metric->dateType),
  92. set::name('dateType'),
  93. set::items($lang->metric->dateTypeList),
  94. set::value($period),
  95. set::width('1/2'),
  96. set::required(true)
  97. )
  98. ),
  99. formRow
  100. (
  101. formGroup
  102. (
  103. set::label($lang->metric->name),
  104. set::name('name'),
  105. set::width('1/2'),
  106. set::required(true)
  107. ),
  108. formGroup
  109. (
  110. set::label($lang->metric->alias),
  111. set::name('alias'),
  112. set::required(false),
  113. set::width('1/2'),
  114. set::placeholder($lang->metric->aliasTip)
  115. )
  116. ),
  117. formRow
  118. (
  119. formGroup
  120. (
  121. set::label($lang->metric->code),
  122. set::name('code'),
  123. set::width('1/2'),
  124. set::required(true)
  125. ),
  126. formGroup
  127. (
  128. set::id('unitBox'),
  129. set::width('1/2'),
  130. set::label($lang->metric->unit),
  131. inputGroup
  132. (
  133. div
  134. (
  135. setClass('grow'),
  136. picker
  137. (
  138. set::name('unit'),
  139. set::items($lang->metric->unitList)
  140. )
  141. ),
  142. div
  143. (
  144. setClass('flex items-center pl-2 clip'),
  145. checkbox
  146. (
  147. set::name('customUnit'),
  148. set::text($lang->metric->customUnit)
  149. )
  150. )
  151. )
  152. ),
  153. formGroup
  154. (
  155. set::id('addUnitBox'),
  156. setClass('hidden'),
  157. set::width('1/2'),
  158. set::label($lang->metric->unit),
  159. inputGroup
  160. (
  161. div
  162. (
  163. setClass('grow'),
  164. input(set::name('addunit'))
  165. ),
  166. div
  167. (
  168. setClass('flex items-center pl-2 clip'),
  169. checkbox
  170. (
  171. set::name('customUnit'),
  172. set::text($lang->metric->customUnit)
  173. )
  174. )
  175. )
  176. )
  177. ),
  178. on::change('[name=customUnit]', 'addUnit'),
  179. formGroup
  180. (
  181. set::label($lang->metric->desc),
  182. set::control(array('type' => 'textarea', 'rows' => 3)),
  183. set::name('desc'),
  184. set::placeholder($lang->metric->descTip)
  185. ),
  186. formGroup
  187. (
  188. set::label($lang->metric->definition),
  189. set::control(array('type' => 'textarea', 'rows' => 3)),
  190. set::name('definition'),
  191. set::placeholder($lang->metric->definitionTip)
  192. ),
  193. $fnGenerateAfterCreateRatio(),
  194. set::submitBtnText($lang->save)
  195. );