* Optimize the column config for dtable.

This commit is contained in:
dingguodong
2023-06-08 14:15:12 +08:00
parent 98e6df74c7
commit c392968c58
3 changed files with 29 additions and 25 deletions
+9 -6
View File
@@ -107,12 +107,15 @@ class datatableModel extends model
$set->group = isset($fieldList[$id]['group']) ? $fieldList[$id]['group'] : '';
$set->link = isset($fieldList[$id]['link']) ? $fieldList[$id]['link'] : '';
if(isset($fieldList[$id]['minWidth'])) $set->minWidth = $fieldList[$id]['minWidth'];
if(isset($fieldList[$id]['maxWidth'])) $set->maxWidth = $fieldList[$id]['maxWidth'];
if(isset($fieldList[$id]['pri'])) $set->pri = $fieldList[$id]['pri'];
if(isset($fieldList[$id]['statusMap'])) $set->statusMap = $fieldList[$id]['statusMap'];
if(isset($fieldList[$id]['type'])) $set->type = $fieldList[$id]['type'];
if(isset($fieldList[$id]['actionsMap'])) $set->actionsMap = $fieldList[$id]['actionsMap'];
if(isset($fieldList[$id]['minWidth'])) $set->minWidth = $fieldList[$id]['minWidth'];
if(isset($fieldList[$id]['maxWidth'])) $set->maxWidth = $fieldList[$id]['maxWidth'];
if(isset($fieldList[$id]['pri'])) $set->pri = $fieldList[$id]['pri'];
if(isset($fieldList[$id]['statusMap'])) $set->statusMap = $fieldList[$id]['statusMap'];
if(isset($fieldList[$id]['type'])) $set->type = $fieldList[$id]['type'];
if(isset($fieldList[$id]['actionsMap'])) $set->actionsMap = $fieldList[$id]['actionsMap'];
if(isset($fieldList[$id]['nestedToggle'])) $set->nestedToggle = $fieldList[$id]['nestedToggle'];
if(isset($fieldList[$id]['checkbox'])) $set->checkbox = $fieldList[$id]['checkbox'];
if(isset($fieldList[$id]['sortType'])) $set->sortType = $fieldList[$id]['sortType'];
$setting[$key] = $set;
}
+2 -6
View File
@@ -156,15 +156,11 @@ $cols = array_values($setting);
foreach($cols as $key => $col)
{
$col->name = $col->id;
if($col->id == 'title' || $col->id == 'id')
if($col->id == 'title')
{
$col->sortType = true;
$col->nestedToggle = true;
$col->checkbox = true;
$col->link = sprintf($col->link, createLink('story', 'view', array('storyID' => '${row.id}', 'version' => '0', 'param' => '0', 'storyType' => $storyType)));
}
if($col->id == 'title') $col->link = sprintf($col->link, createLink('story', 'view', array('storyID' => '${row.id}', 'version' => '0', 'param' => '0', 'storyType' => $storyType)));
$cols[$key] = $col;
}
+18 -13
View File
@@ -4,12 +4,15 @@ $config->story->datatable = new stdclass();
$config->story->datatable->defaultField = array('id', 'title', 'pri', 'plan', 'status', 'openedBy', 'estimate', 'reviewedBy', 'stage', 'assignedTo', 'taskCount', 'actions');
$config->story->datatable->fieldList['id']['title'] = 'idAB';
$config->story->datatable->fieldList['id']['fixed'] = 'left';
$config->story->datatable->fieldList['id']['width'] = '80';
$config->story->datatable->fieldList['id']['required'] = 'yes';
$config->story->datatable->fieldList['id']['type'] = 'id';
$config->story->datatable->fieldList['id']['group'] = 'group1';
$config->story->datatable->fieldList['id']['title'] = 'idAB';
$config->story->datatable->fieldList['id']['fixed'] = 'left';
$config->story->datatable->fieldList['id']['width'] = '80';
$config->story->datatable->fieldList['id']['required'] = 'yes';
$config->story->datatable->fieldList['id']['type'] = 'id';
$config->story->datatable->fieldList['id']['group'] = 'group1';
$config->story->datatable->fieldList['id']['sortType'] = true;
$config->story->datatable->fieldList['id']['nestedToggle'] = true;
$config->story->datatable->fieldList['id']['checkbox'] = true;
if($app->tab == 'execution')
{
@@ -21,13 +24,15 @@ if($app->tab == 'execution')
$config->story->datatable->fieldList['order']['name'] = $this->lang->story->order;
}
$config->story->datatable->fieldList['title']['title'] = 'title';
$config->story->datatable->fieldList['title']['type'] = 'link';
$config->story->datatable->fieldList['title']['link'] = 'RAWJS<function(info){const {row, col} = info; return {url:`%s`,target:\'_blank\'};}>RAWJS';
$config->story->datatable->fieldList['title']['fixed'] = 'left';
$config->story->datatable->fieldList['title']['width'] = '342';
$config->story->datatable->fieldList['title']['required'] = 'yes';
$config->story->datatable->fieldList['title']['group'] = 'group1';
$config->story->datatable->fieldList['title']['title'] = 'title';
$config->story->datatable->fieldList['title']['type'] = 'link';
$config->story->datatable->fieldList['title']['link'] = 'RAWJS<function(info){const {row, col} = info; return {url:`%s`,target:\'_blank\'};}>RAWJS';
$config->story->datatable->fieldList['title']['fixed'] = 'left';
$config->story->datatable->fieldList['title']['width'] = '342';
$config->story->datatable->fieldList['title']['required'] = 'yes';
$config->story->datatable->fieldList['title']['group'] = 'group1';
$config->story->datatable->fieldList['title']['sortType'] = true;
$config->story->datatable->fieldList['title']['nestedToggle'] = true;
$config->story->datatable->fieldList['pri']['title'] = 'priAB';
$config->story->datatable->fieldList['pri']['fixed'] = 'left';