diff --git a/module/action/lang/en.php b/module/action/lang/en.php index 9891d2d2e8..8bce4c1f6f 100755 --- a/module/action/lang/en.php +++ b/module/action/lang/en.php @@ -456,6 +456,10 @@ $lang->action->dynamicAction->doc['deleted'] = 'Delete Document'; $lang->action->dynamicAction->doc['undeleted'] = 'Restore Document'; $lang->action->dynamicAction->doc['hidden'] = 'Hide Document'; +$lang->action->dynamicAction->api['created'] = 'Create Interface'; +$lang->action->dynamicAction->api['edited'] = 'Edit Interface'; +$lang->action->dynamicAction->api['deleted'] = 'Delete Interface'; + $lang->action->dynamicAction->user['created'] = 'Create User'; $lang->action->dynamicAction->user['edited'] = 'Edit User'; $lang->action->dynamicAction->user['deleted'] = 'Delete User'; @@ -502,6 +506,7 @@ $lang->action->label->risk = 'Risk|risk|view|riskID=%s'; $lang->action->label->issue = 'Issue|issue|view|issueID=%s'; $lang->action->label->design = 'Design|design|view|designID=%s'; $lang->action->label->stakeholder = 'Stakeholder|stakeholder|view|userID=%s'; +$lang->action->label->api = 'Interface|api|index|libID=%s&moduleID=%s&apiID=%s'; /* Object type. */ $lang->action->search = new stdclass(); diff --git a/module/action/lang/zh-cn.php b/module/action/lang/zh-cn.php index 18955bbe46..b957726aae 100755 --- a/module/action/lang/zh-cn.php +++ b/module/action/lang/zh-cn.php @@ -99,7 +99,6 @@ $lang->action->objectTypes['testreport'] = '报告'; $lang->action->objectTypes['doc'] = '文档'; $lang->action->objectTypes['api'] = '接口'; $lang->action->objectTypes['doclib'] = '文档库'; -$lang->action->objectTypes['api'] = '接口库'; $lang->action->objectTypes['apistruct'] = '数据结构'; $lang->action->objectTypes['todo'] = '待办'; $lang->action->objectTypes['risk'] = '风险'; @@ -456,6 +455,10 @@ $lang->action->dynamicAction->doc['deleted'] = '删除文档'; $lang->action->dynamicAction->doc['undeleted'] = '还原文档'; $lang->action->dynamicAction->doc['hidden'] = '隐藏文档'; +$lang->action->dynamicAction->api['created'] = '创建接口'; +$lang->action->dynamicAction->api['edited'] = '编辑接口'; +$lang->action->dynamicAction->api['deleted'] = '删除接口'; + $lang->action->dynamicAction->user['created'] = '创建用户'; $lang->action->dynamicAction->user['edited'] = '编辑用户'; $lang->action->dynamicAction->user['deleted'] = '删除用户'; @@ -502,6 +505,7 @@ $lang->action->label->risk = '风险|risk|view|riskID=%s'; $lang->action->label->issue = '问题|issue|view|issueID=%s'; $lang->action->label->design = '设计|design|view|designID=%s'; $lang->action->label->stakeholder = '干系人|stakeholder|view|userID=%s'; +$lang->action->label->api = '接口|api|index|libID=%s&moduleID=%s&apiID=%s'; /* Object type. */ $lang->action->search = new stdclass(); diff --git a/module/action/model.php b/module/action/model.php index 61cf3e0d9b..7a18b7d1db 100755 --- a/module/action/model.php +++ b/module/action/model.php @@ -1168,10 +1168,15 @@ class actionModel extends model $libObjectID = $type != 'custom' ? $action->$type : ''; $libObjectID = trim($libObjectID, ','); - if(empty($libObjectID)) return false; + if(empty($libObjectID) and $type != 'custom') return false; $params = sprintf($vars, $type, $libObjectID, $libID); } + elseif($action->objectType == 'api') + { + $api = $this->dao->select('id,lib,module')->from(TABLE_API)->where('id')->eq($action->objectID)->fetch(); + $params = sprintf($vars, $api->lib, $api->module, $api->id); + } else { $params = sprintf($vars, $action->objectID); @@ -1183,7 +1188,14 @@ class actionModel extends model $docLib = $this->dao->select('type,product,project,execution,deleted')->from(TABLE_DOCLIB)->where('id')->eq($action->objectID)->fetch(); $docLib->objectID = strpos('product,project,execution', $docLib->type) !== false ? $docLib->{$docLib->type} : 0; $appendLib = $docLib->deleted == '1' ? $action->objectID : 0; - $action->objectLink = helper::createLink('doc', 'objectLibs', sprintf($vars, $docLib->type, $docLib->objectID, $action->objectID, $appendLib)); + if($docLib->type == 'api') + { + $action->objectLink = helper::createLink('api', 'index', "libID={$action->objectID}"); + } + else + { + $action->objectLink = helper::createLink('doc', 'objectLibs', sprintf($vars, $docLib->type, $docLib->objectID, $action->objectID, $appendLib)); + } } elseif($action->objectType == 'user') { diff --git a/module/api/control.php b/module/api/control.php index ced9b1e4f3..6f1765fcbd 100755 --- a/module/api/control.php +++ b/module/api/control.php @@ -427,10 +427,13 @@ class api extends control ->setDefault('product,module', 0) ->get(); - $this->api->update($apiID, $params); - if(dao::isError()) + $changes = $this->api->update($apiID, $params); + if(dao::isError()) return $this->sendError(dao::getError()); + + if($changes) { - return $this->sendError(dao::getError()); + $actionID = $this->action->create('api', $apiID, 'edited'); + $this->action->logHistory($actionID, $changes); } return $this->sendSuccess(array('locate' => helper::createLink('api', 'index', "libID=0&moduleID=0&apiID=$apiID"))); diff --git a/module/api/model.php b/module/api/model.php index b7d13df656..aa065f6ee5 100644 --- a/module/api/model.php +++ b/module/api/model.php @@ -214,6 +214,8 @@ class apiModel extends model ->batchCheck($this->config->api->edit->requiredFields, 'notempty') ->where('id')->eq($id) ->exec(); + + return common::createChanges($oldApi, $data); } /**