batchcreate.ui.js 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. window.setModuleAndPlanByBranch = function(e)
  2. {
  3. const $branch = $(e.target);
  4. const branchID = $branch.val();
  5. let $row = $branch.closest('tr');
  6. var moduleLink = $.createLink('tree', 'ajaxGetOptionMenu', 'productID=' + productID + '&viewtype=story&branch=' + branchID + '&rootModuleID=0&returnType=html&fieldID=&extra=nodeleted');
  7. const $modulePicker = $row.find('[name^=module]').zui('picker');
  8. const moduleID = $row.find('[name^=module]').val();
  9. $.getJSON(moduleLink, function(data)
  10. {
  11. $modulePicker.render({items: data.items})
  12. $modulePicker.$.setValue(moduleID);
  13. });
  14. let planLink = $.createLink('product', 'ajaxGetPlans', 'productID=' + productID + '&branch=' + branchID + '&params=unexpired,noclosed&skipParent=true');
  15. const $planPicker = $rows.find('[name^=plan]').zui('picker');
  16. const planID = $rows.find('[name^=plan]').val();
  17. $.getJSON(planLink, function(data)
  18. {
  19. $planPicker.render({items: data})
  20. $planPicker.$.setValue(planID);
  21. });
  22. }
  23. window.setGrade = function(e)
  24. {
  25. const parent = e.target.value;
  26. const link = $.createLink('story', 'ajaxGetGrade', 'parent=' + parent + '&type=' + storyType);
  27. $.get(link, function(data)
  28. {
  29. data = JSON.parse(data);
  30. const currentIndex = $(e.target).closest('tr').attr('data-index');
  31. $(e.target).closest('tbody').find('[name^=grade]').each(function(index)
  32. {
  33. if(index < currentIndex) return;
  34. let $grade = $(this).zui('picker');
  35. $grade.render({items: data.items});
  36. $grade.$.setValue(data.default);
  37. })
  38. })
  39. }
  40. window.switchType = function(e)
  41. {
  42. const type = e.target.value;
  43. const link = $.createLink(type, 'batchCreate', `productID=${productID}&branchID=${branch}&module=0&storyID=${storyID}&executionID=${executionID}`);
  44. loadPage(link);
  45. }
  46. window.changeRegion = function(e)
  47. {
  48. const $region = $(e.target);
  49. const regionID = $region.val();
  50. const laneLink = $.createLink('kanban', 'ajaxGetLanes', 'regionID=' + regionID + '&type=story&field=lane');
  51. $.getJSON(laneLink, function(data)
  52. {
  53. const laneID = data.items.length > 0 ? data.items[0].value : '';
  54. $region.closest('tr').find('[name^=lane]').zui('picker').render({items: data.items});
  55. $region.closest('tr').find('[name^=lane]').zui('picker').$.setValue(laneID);
  56. });
  57. }
  58. window.handleRenderFieldCol = function($col, col)
  59. {
  60. if(col.name === 'sourceNote') return renderSourceNote($col);
  61. };