From e5bf6b41d22c9f19fc157766e7ff667f74fe9b64 Mon Sep 17 00:00:00 2001 From: sunguangming Date: Tue, 25 Jul 2023 09:49:43 +0800 Subject: [PATCH] * Fix api::edit bug. --- module/api/model.php | 4 +- module/api/ui/create.html.php | 4 +- module/api/ui/edit.html.php | 127 ++++++++++++---------------------- module/api/ui/view.html.php | 2 +- 4 files changed, 49 insertions(+), 88 deletions(-) diff --git a/module/api/model.php b/module/api/model.php index 8824421416..99d4e044da 100644 --- a/module/api/model.php +++ b/module/api/model.php @@ -92,7 +92,7 @@ class apiModel extends model $now = helper::now(); $data = fixer::input('post') ->trim('title,path') - ->remove('type') + ->remove('type,undefined') ->skipSpecial('params,response') ->add('addedBy', $this->app->user->account) ->add('addedDate', $now) @@ -227,7 +227,7 @@ class apiModel extends model ->add('editedDate', $now) ->add('version', $oldApi->version) ->setDefault('product,module', 0) - ->remove('type') + ->remove('type,undefined') ->get(); $changes = common::createChanges($oldApi, $data); diff --git a/module/api/ui/create.html.php b/module/api/ui/create.html.php index 774f0cb625..d4c3d27fda 100644 --- a/module/api/ui/create.html.php +++ b/module/api/ui/create.html.php @@ -456,6 +456,6 @@ formPanel editor ( set::name('desc'), - ), - ), + ) + ) ); diff --git a/module/api/ui/edit.html.php b/module/api/ui/edit.html.php index b1074b5d1d..70ff10b2ba 100644 --- a/module/api/ui/edit.html.php +++ b/module/api/ui/edit.html.php @@ -1,6 +1,43 @@ ") + ), + h::td + ( + textarea + ( + set::rows(1) + ), + ), + h::td + ( + div + ( + setClass('pl-2 flex self-center line-btn'), + btn + ( + setClass('btn ghost btn-add'), + icon('plus') + ), + btn + ( + setClass('btn ghost btn-delete'), + icon('trash'), + ), + ) + ) +); + if(!empty($api->params['header'])) { foreach($api->params['header'] as $param) @@ -49,42 +86,7 @@ if(!empty($api->params['header'])) } else { - $apiHeader = h::tr - ( - setClass('input-row'), - h::td - ( - input(), - ), - h::td - ( - html("") - ), - h::td - ( - textarea - ( - set::rows(1) - ), - ), - h::td - ( - div - ( - setClass('pl-2 flex self-center line-btn'), - btn - ( - setClass('btn ghost btn-add'), - icon('plus') - ), - btn - ( - setClass('btn ghost btn-delete'), - icon('trash'), - ), - ) - ) - ); + $apiHeader[] = $defaultTR; } if(!empty($api->params['query'])) @@ -135,42 +137,7 @@ if(!empty($api->params['query'])) } else { - $apiQuery[] = h::tr - ( - setClass('input-row'), - h::td - ( - input(), - ), - h::td - ( - html("") - ), - h::td - ( - textarea - ( - set::rows(1) - ), - ), - h::td - ( - div - ( - setClass('pl-2 flex self-center line-btn'), - btn - ( - setClass('btn ghost btn-add'), - icon('plus') - ), - btn - ( - setClass('btn ghost btn-delete'), - icon('trash'), - ), - ) - ) - ); + $apiQuery[] = $defaultTR; } $parseTree = function($data, $typeList, $level = 0) use (&$parseTree) @@ -248,10 +215,7 @@ $parseTree = function($data, $typeList, $level = 0) use (&$parseTree) if(!empty($api->params['params'])) { - foreach($api->params['params'] as $param) - { - $apiParams[] = array_merge($apiParams, $parseTree($param, $typeOptions)); - } + foreach($api->params['params'] as $param) $apiParams = array_merge($apiParams, $parseTree($param, $typeOptions)); } else { @@ -312,10 +276,7 @@ else if(!empty($api->response)) { - foreach($api->response as $param) - { - $apiResponse[] = array_merge($apiResponse, $parseTree($param, $typeOptions)); - } + foreach($api->response as $param) $apiResponse = array_merge($apiResponse, $parseTree($param, $typeOptions)); } else { @@ -547,7 +508,7 @@ formPanel ( set::name('type'), set::inline(true), - set::value($api->param['params']['paramsType']), + set::value($api->params['paramsType']), set::items($lang->struct->typeOptions), ), ), @@ -588,7 +549,7 @@ formPanel $apiParams ), ), - formHidden('params', '{"header":[],"params":[],"paramsType":"fromData","query":[]}'), + formHidden('params', json_encode($api->params)), formGroup ( set::width('1/2'), @@ -635,7 +596,7 @@ formPanel $apiResponse ), ), - formHidden('response', '[]'), + formHidden('response', json_encode($api->response)), formGroup ( set::width('1/2'), diff --git a/module/api/ui/view.html.php b/module/api/ui/view.html.php index a424683f13..5e6d2743c4 100644 --- a/module/api/ui/view.html.php +++ b/module/api/ui/view.html.php @@ -74,7 +74,7 @@ for($itemVersion = $api->version; $itemVersion > 0; $itemVersion--) } $apiHeader = $apiQuery = $apiParams = $apiResponse = array(); -$parseTree = function($data, $typeList, $level = 0) use (&$parseTree) +$parseTree = function($data, $typeList, $level = 0) use(&$parseTree) { global $lang;