cancelprojectapproval.html.php 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. <?php
  2. /**
  3. * The cancel project approval file of charter module of ZenTaoPMS.
  4. *
  5. * @copyright Copyright 2009-2024 禅道软件(青岛)有限公司(ZenTao Software (Qingdao) Co., Ltd. www.zentao.net)
  6. * @license ZPL(https://zpl.pub/page/zplv12.html) or AGPL(https://www.gnu.org/licenses/agpl-3.0.en.html)
  7. * @author Fangzhou Hu<hufangzhou@easycorp.ltd>
  8. * @package charter
  9. * @link https://www.zentao.net
  10. */
  11. namespace zin;
  12. jsVar('browseType', $this->session->browseType);
  13. jsVar('vision', $config->vision);
  14. $fields = defineFieldList('charter.cancelProjectApproval');
  15. $fields->field('appliedBy')
  16. ->wrapAfter()
  17. ->control('picker', array('required' => true))
  18. ->width('1/3')
  19. ->items($users)
  20. ->value($app->user->account);
  21. foreach(data('fileList') as $key => $fileName)
  22. {
  23. $fields->field($key)
  24. ->name("files[$key]")
  25. ->label($fileName)
  26. ->width('1/3')
  27. ->multiple(false)
  28. ->control('fileSelector', array('multiple' => false, 'maxFileCount' => 1, 'defaultFiles' => $charter->files, 'extra' => "cancelApproval-$key", 'renameBtn' => false, 'deleteName' => 'deleteFiles'));
  29. }
  30. $fields->field('desc')
  31. ->width('full')
  32. ->control('editor');
  33. $loadReviewers = function()
  34. {
  35. $cols = array();
  36. $cols['node'] = array('name' => 'approval_node', 'type' => 'text', 'title' => $this->lang->approval->node, 'width' => '200', 'fixed' => 'left');
  37. $cols['reviewer'] = array('name' => 'approval_reviewer', 'type' => 'control', 'title' => $this->lang->approval->reviewer, 'control' => array('type' => 'picker', 'props' => "RAWJS<window.getReviewerCellProps>RAWJS"));
  38. $cols['ccer'] = array('name' => 'approval_ccer', 'type' => 'control', 'title' => $this->lang->approval->ccer, 'control' => array('type' => 'picker', 'props' => "RAWJS<window.getCcerCellProps>RAWJS"));
  39. return dtable
  40. (
  41. set::bordered(true),
  42. set::rowHeight(45),
  43. set::cols(array_values($cols)),
  44. set::data(data('approvalReviewDatas')),
  45. set::onRenderCell(jsRaw('window.renderReviewerItem')),
  46. set::plugins(array('form'))
  47. );
  48. };
  49. $fields->field('reviewerBox')->className('reviewerBox')->width('full')->label($this->lang->charter->approval)->control($loadReviewers)->readonly(false)->layoutRules('');
  50. formGridPanel
  51. (
  52. set::title($lang->charter->cancelProjectApproval),
  53. set::fields($fields),
  54. set::modeSwitcher(false),
  55. set::submitBtnText($lang->charter->approvalAction)
  56. );