From b9927123fc1b74e2397514a4eaad2303234f4c28 Mon Sep 17 00:00:00 2001 From: tianshujie Date: Wed, 17 Jan 2024 16:15:54 +0800 Subject: [PATCH] * Modify kanban field layout and js method. --- module/task/js/create.ui.js | 12 +++++------- module/task/ui/common.field.php | 14 -------------- module/task/ui/create.field.php | 15 +++++++++++++++ module/task/ui/create.html.php | 2 +- 4 files changed, 21 insertions(+), 22 deletions(-) diff --git a/module/task/js/create.ui.js b/module/task/js/create.ui.js index 61977d96aa..4fe75334a8 100644 --- a/module/task/js/create.ui.js +++ b/module/task/js/create.ui.js @@ -234,14 +234,12 @@ function loadLanes() { const regionID = $('input[name=region]').val(); const getLaneLink = $.createLink('kanban', 'ajaxGetLanes', 'regionID=' + regionID + '&type=task&field=lane'); - $.get(getLaneLink, function(data) + $.getJSON(getLaneLink, function(data) { - if(data) - { - data = JSON.parse(data); - const $lanePicker = $('input[name=lane]').zui('picker'); - $lanePicker.render({items: data.items}); - } + const laneID = data.items.length > 0 ? data.items[0].value : ''; + const $lanePicker = $('input[name=lane]').zui('picker'); + $lanePicker.$.setValue(laneID); + $lanePicker.render({items: data.items}); }); } diff --git a/module/task/ui/common.field.php b/module/task/ui/common.field.php index 0f3e813729..39147e58f8 100644 --- a/module/task/ui/common.field.php +++ b/module/task/ui/common.field.php @@ -65,17 +65,3 @@ $fields->field('mailto') $fields->field('keywords') ->control('input'); - -$fields = defineFieldList('task.kanban'); - -$fields->field('region') - ->control(array('type' => 'picker', 'required' => true)) - ->label(data('lang.kanbancard.region')) - ->items(data('regionPairs')) - ->value(data('regionID')); - -$fields->field('lane') - ->control(array('type' => 'picker', 'required' => true)) - ->label(data('lang.kanbancard.lane')) - ->items(data('lanePairs')) - ->value(data('laneID')); diff --git a/module/task/ui/create.field.php b/module/task/ui/create.field.php index a3bf4945cf..564eff4cae 100644 --- a/module/task/ui/create.field.php +++ b/module/task/ui/create.field.php @@ -21,6 +21,21 @@ if(!empty(data('features.story')) && data('execution.type') == 'kanban') $fields->field('module')->wrapBefore(); } +/* Set region and lane fieldList. */ +$fields->field('region') + ->hidden(data('execution.type') != 'kanban') + ->label(data('lang.kanbancard.region')) + ->control('picker', array('required' => true)) + ->items(data('regionPairs') ? data('regionPairs') : array()) + ->value(data('regionID')); + +$fields->field('lane') + ->hidden(data('execution.type') != 'kanban') + ->label(data('lang.kanbancard.lane')) + ->control('picker', array('required' => true)) + ->items(data('lanePairs') ? data('lanePairs') : array()) + ->value(data('laneID')); + /* Set story field control. */ $buildStoryBox = function($props) { diff --git a/module/task/ui/create.html.php b/module/task/ui/create.html.php index 4f2ea684cb..070e146059 100644 --- a/module/task/ui/create.html.php +++ b/module/task/ui/create.html.php @@ -25,7 +25,6 @@ $fields->orders('desc,module,storyBox'); $fields->fullModeOrders('type,module,storyBox', 'desc,file,mailto,keywords'); if($execution->type == 'kanban') { - $fields->merge('task.kanban'); $fields->orders('desc,module,storyBox', 'type,assignedTo,region,lane'); $fields->fullModeOrders('name,assignedTo', 'type,module,storyBox', 'desc,file,mailto,keywords'); if(empty($features['story'])) $fields->fullModeOrders('type,module,storyBox', 'name,assignedTo', 'desc,file,mailto,keywords'); @@ -46,6 +45,7 @@ formGridPanel on::change('[name=module]', 'loadExecutionStories'), on::change('[name=story]', 'setStoryRelated'), on::change('[name=type]', 'typeChange'), + on::change('[name=region]', 'loadLanes'), on::click('[name=isShowAllModule]', 'showAllModule'), on::click('[name=copyButton]', 'copyStoryTitle'), on::keyup('[name=name]', 'saveTaskName'),