task.html.php 3.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. <?php
  2. /**
  3. * The stage view file of marketresearch 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 Hucheng Tang <tanghucheng@easycorp.ltd>
  7. * @package marketresearch
  8. * @link https://www.zentao.net
  9. */
  10. namespace zin;
  11. jsVar('stageLang', $lang->stage->common);
  12. jsVar('delayed', $lang->execution->delayed);
  13. jsVar('delayWarning', $lang->task->delayWarning);
  14. $canViewResearch = hasPriv('marketresearch', 'view');
  15. $canCreateTask = hasPriv('researchtask', 'create');
  16. $canCreateStage = hasPriv('marketresearch', 'createStage');
  17. featureBar
  18. (
  19. set::current($browseType),
  20. set::linkParams("researchID={$researchID}&browseType={key}&param={$param}&orderBy={$orderBy}&recTotal={$pager->recTotal}&recPerPage={$pager->recPerPage}"),
  21. set::labelCount($taskTotal),
  22. li(searchToggle(set::module('task'), set::open($browseType == 'bysearch')))
  23. );
  24. toolbar($canViewResearch ? btn(setClass('ghost'), set::icon('list-alt'), set::hint($lang->marketresearch->view), set::text($lang->marketresearch->view), set::url(inlink('view', "researchID={$researchID}"))) : null, $canCreateTask ? btn(set::icon('plus'), set::type('secondary'), set::url(createLink('researchtask', 'create', "researchID={$researchID}")), set::text($lang->researchtask->create), set(array('data-app' => $app->tab, 'class' => 'researchtask-create-btn'))) : null, $canCreateStage ? btn(set::icon('plus'), set::type('primary'), set::url(createLink('marketresearch', 'createStage', "researchID=$researchID&stageID=0&executionType=stage")), set::text($lang->marketresearch->createStage), set(array('data-app' => $app->tab, 'class' => 'createStage-btn'))) : null);
  25. $cols = $this->loadModel('datatable')->getSetting('marketresearch');
  26. foreach($taskStats as $task)
  27. {
  28. $actionType = $task->type == 'stage' ? 'stage' : 'task';
  29. $cols['actions']['menu'] = $config->marketresearch->actionMenu->$actionType;
  30. if($actionType == 'stage') $task->PM = zget($users, $task->PM);
  31. $task = initTableData(array($task), $cols, $this->marketresearch);
  32. if($task[0]->type == 'stage')
  33. {
  34. foreach($task[0]->actions as &$action)
  35. {
  36. if($action['name'] == 'createStage' && !empty($task[0]->hasTask))
  37. {
  38. $action['disabled'] = 1;
  39. $action['hint'] = $lang->programplan->error->createdTask;
  40. }
  41. }
  42. }
  43. }
  44. dtable
  45. (
  46. set::userMap($users),
  47. set::cols($cols),
  48. set::orderBy($orderBy),
  49. set::data($taskStats),
  50. set::onRenderCell(jsRaw('window.onRenderCell')),
  51. set::sortLink(createLink('marketresearch', 'task', "researchID={$researchID}&browseType={$browseType}&param={$param}&orderBy={name}_{sortType}&recTotal={$pager->recTotal}&recPerPage={$pager->recPerPage}")),
  52. set::footer(array(array('html' => $lang->marketresearch->summary), 'flex', 'pager')),
  53. set::footPager(usePager())
  54. );