From 10e36c63e15ab97176761e708a9ad57921166116 Mon Sep 17 00:00:00 2001 From: zhaoxiang <756958008@qq.com> Date: Thu, 22 Feb 2018 21:17:11 +0800 Subject: [PATCH] =?UTF-8?q?added=20=E5=AE=8C=E6=88=90=E5=AD=97=E6=AE=B5?= =?UTF-8?q?=E7=BC=96=E8=BE=91=E5=88=A0=E9=99=A4=E5=92=8C=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- application/admin/controller/Fields.php | 97 ++++++++----------- .../admin/controller/InterfaceList.php | 8 +- 2 files changed, 48 insertions(+), 57 deletions(-) diff --git a/application/admin/controller/Fields.php b/application/admin/controller/Fields.php index 75fce02..f3d9172 100644 --- a/application/admin/controller/Fields.php +++ b/application/admin/controller/Fields.php @@ -84,66 +84,55 @@ class Fields extends Base { } } + /** + * 新增字段 + * @author zhaoxiang + * @return array + */ public function add() { - if (IS_POST) { - $data = I('post.'); - $data['fieldName'] = $data['showName']; - $res = D('ApiFields')->add($data); - if ($res === false) { - $this->ajaxError('操作失败'); - } else { - S('ApiRequest_' . $data['hash'], null); - S('ApiResponse_' . $data['hash'], null); - $this->ajaxSuccess('添加成功'); - } + $postData = $this->request->post(); + $postData['showName'] = $postData['fieldName']; + $postData['default'] = $postData['defaults']; + unset($postData['defaults']); + $res = ApiFields::create($postData); + if ($res === false) { + return $this->buildFailed(ReturnCode::DB_SAVE_ERROR, '操作失败'); } else { - $this->assign('dataType', $this->dataType); - $this->display(); + return $this->buildSuccess('操作成功'); } } + /** + * 字段编辑 + * @author zhaoxiang + * @return array + */ public function edit() { - if (IS_POST) { - $data = I('post.'); - $data['fieldName'] = $data['showName']; - $res = D('ApiFields')->where(array('id' => $data['id']))->save($data); - if ($res === false) { - $this->ajaxError('操作失败'); - } else { - if ($data['type'] == 0) { - S('ApiRequest_' . $data['hash'], null); - } else { - S('ApiResponse_' . $data['hash'], null); - } - $this->ajaxSuccess('添加成功'); - } + $postData = $this->request->post(); + $postData['showName'] = $postData['fieldName']; + $postData['default'] = $postData['defaults']; + unset($postData['defaults']); + $res = ApiFields::update($postData); + if ($res === false) { + return $this->buildFailed(ReturnCode::DB_SAVE_ERROR, '操作失败'); } else { - $id = I('get.id'); - if ($id) { - $detail = D('ApiFields')->where(array('id' => $id))->find(); - $this->assign('detail', $detail); - $this->assign('dataType', $this->dataType); - $this->display('add'); - } + return $this->buildSuccess([]); } } + /** + * 字段删除 + * @author zhaoxiang + * @return array + */ public function del() { - if (IS_POST) { - $id = I('post.id'); - if ($id) { - $detail = D('ApiFields')->where(array('id' => $id))->find(); - if ($detail['type'] == 0) { - S('ApiRequest_' . $detail['hash'], null); - } else { - S('ApiResponse_' . $detail['hash'], null); - } - D('ApiFields')->where(array('id' => $id))->delete(); - $this->ajaxSuccess('操作成功'); - } else { - $this->ajaxError('缺少参数'); - } + $id = $this->request->get('id'); + if (!$id) { + return $this->buildFailed(ReturnCode::EMPTY_PARAMS, '缺少必要参数'); } + ApiFields::destroy($id); + + return $this->buildSuccess([]); } public function upload() { @@ -192,10 +181,10 @@ class Fields extends Base { $addArr = array( 'fieldName' => $index, 'showName' => $prefix, - 'hash' => I('post.hash'), + 'hash' => $this->request->post('hash'), 'isMust' => 1, 'dataType' => DataType::TYPE_ARRAY, - 'type' => I('post.type') + 'type' => $this->request->post('type') ); $dataArr[] = $addArr; $prefix .= '[]'; @@ -206,10 +195,10 @@ class Fields extends Base { $addArr = array( 'fieldName' => $index, 'showName' => $prefix, - 'hash' => I('post.hash'), + 'hash' => $this->request->post('hash'), 'isMust' => 1, 'dataType' => DataType::TYPE_OBJECT, - 'type' => I('post.type') + 'type' => $this->request->post('type') ); $dataArr[] = $addArr; $prefix .= '{}'; @@ -218,10 +207,10 @@ class Fields extends Base { $addArr = array( 'fieldName' => $index, 'showName' => $myPre, - 'hash' => I('post.hash'), + 'hash' => $this->request->post('hash'), 'isMust' => 1, 'dataType' => DataType::TYPE_STRING, - 'type' => I('post.type') + 'type' => $this->request->post('type') ); if (is_numeric($datum)) { if (preg_match('/^\d*$/', $datum)) { diff --git a/application/admin/controller/InterfaceList.php b/application/admin/controller/InterfaceList.php index 9863e2f..0f6622f 100644 --- a/application/admin/controller/InterfaceList.php +++ b/application/admin/controller/InterfaceList.php @@ -8,6 +8,7 @@ namespace app\admin\controller; +use app\model\ApiFields; use app\model\ApiList; use app\util\ReturnCode; @@ -123,11 +124,12 @@ class InterfaceList extends Base { * @author zhaoxiang */ public function del() { - $id = $this->request->get('id'); - if (!$id) { + $hash = $this->request->get('hash'); + if (!$hash) { return $this->buildFailed(ReturnCode::EMPTY_PARAMS, '缺少必要参数'); } - ApiList::destroy($id); + ApiList::destroy(['hash' => $hash]); + ApiFields::destroy(['hash' => $hash]); return $this->buildSuccess([]); }