view.ui.js 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132
  1. /**
  2. * 待办转研发需求。
  3. * Change todo to story.
  4. *
  5. * @return void
  6. */
  7. function toStory()
  8. {
  9. const objectID = vision != 'lite' ? $('#productModal input[name=product]').val() : $('#projectModal input[name=projectToStory]').val();
  10. const link = vision != 'lite' ? $.createLink('story', 'create', 'productID=' + objectID + '&branch=0&moduleID=0&storyID=0&projectID=0&bugID=0&planID=0&todoID=' + todoID, config.defaultView) : $.createLink('story', 'create', 'productID=0&branch=0&moduleID=0&storyID=0&projectID=' + objectID + '&bugID=0&planID=0&todoID=' + todoID, config.defaultView);
  11. zui.Modal.hide('.m-my-todo');
  12. openPage(link, vision != 'lite' ? 'product' : 'project');
  13. }
  14. /**
  15. * 待办转任务。
  16. * Change todo to task.
  17. *
  18. * @return void
  19. */
  20. function toTask()
  21. {
  22. const executionID = $('#executionModal input[name=execution]').val();
  23. if(!executionID)
  24. {
  25. zui.Modal.alert(selectExecution);
  26. return false;
  27. }
  28. zui.Modal.hide('.m-my-todo');
  29. openPage($.createLink('task', 'create', 'executionID=' + executionID + '&storyID=0&moduleID=0&taskID=0&todoID=' + todoID), vision == 'lite' ? 'project' : 'execution');
  30. }
  31. /**
  32. * 待办转bug。
  33. * Change todo to bug.
  34. *
  35. * @return void
  36. */
  37. function toBug()
  38. {
  39. const productID = $('#projectProductModal input[name=bugProduct]').val();
  40. if(!productID)
  41. {
  42. zui.Modal.alert(selectProduct);
  43. return false;
  44. }
  45. zui.Modal.hide('.m-my-todo');
  46. openPage($.createLink('bug', 'create', 'productID=' + productID + '&branch=0&extras=todoID=' + todoID), 'qa');
  47. }
  48. /**
  49. * 跳转至创建项目页面。
  50. * Link to create project.
  51. *
  52. * 开源版没有调用此方法。
  53. *
  54. * @return void
  55. */
  56. function createProject()
  57. {
  58. loadPage($.createLink('project', 'create'));
  59. }
  60. /**
  61. * 跳转至创建执行页面。
  62. * Create execution.
  63. *
  64. * 开源版没有调用此方法。
  65. *
  66. * @return void
  67. */
  68. function createExecution()
  69. {
  70. loadPage($.createLink('execution', 'create'));
  71. }
  72. /**
  73. * 通过 projectID 获取执行。
  74. * Get executions by project id.
  75. *
  76. * @param int projectID
  77. * @return void
  78. */
  79. function getExecutionByProject(e)
  80. {
  81. const projectID = $(e.target).val();
  82. const link = $.createLink('todo', 'ajaxGetExecutionPairs', "projectID=" + projectID);
  83. $.getJSON(link, function(data)
  84. {
  85. const executionID = data.length ? data[0].value : 0;
  86. const $executionPicker = $('#executionModal input[name=execution]').zui('picker');
  87. $executionPicker.render({items: data});
  88. $executionPicker.$.setValue(executionID);
  89. })
  90. }
  91. /**
  92. * 获取产品。
  93. * Get products by projectID.
  94. *
  95. * @param int projectID
  96. * @return void
  97. */
  98. function getProductByProject(e)
  99. {
  100. const projectID = $(e.target).val();
  101. var link = $.createLink('todo', 'ajaxGetProductPairs', "projectID=" + projectID);
  102. $.getJSON(link, function(data)
  103. {
  104. const productID = data.length ? data[0].value : 0;
  105. const $productPicker = $('#projectProductModal input[name=bugProduct]').zui('picker');
  106. $productPicker.render({items: data});
  107. $productPicker.$.setValue(productID);
  108. })
  109. }
  110. /**
  111. * 展开收起执行下拉菜单。
  112. * Toggle show execution.
  113. *
  114. * 开源版没有调用此方法。
  115. *
  116. * @param bool multiple
  117. * @return void
  118. */
  119. function toggleExecution(multiple)
  120. {
  121. $('#executionIdBox').closest('tr').toggleClass('hidden', !multiple);
  122. }