modified 变更工具函数,去除无用数据格式

This commit is contained in:
zhaoxiang 2018-02-25 23:26:29 +08:00
parent 2157c149d5
commit 64104a0a32
11 changed files with 48 additions and 45 deletions

View File

@ -13,6 +13,7 @@ use app\model\ApiList;
use app\model\ApiGroup;
use app\util\ReturnCode;
use app\util\Strs;
use app\util\Tools;
class App extends Base {
/**
@ -46,7 +47,7 @@ class App extends Base {
$listInfo = (new ApiApp())->where($where)->order('app_addTime', 'DESC')->limit($start, $limit)->select();
$count = (new ApiApp())->where($where)->count();
$listInfo = $this->buildArrFromObj($listInfo);
$listInfo = Tools::buildArrFromObj($listInfo);
return $this->buildSuccess([
'list' => $listInfo,
@ -67,7 +68,7 @@ class App extends Base {
$res['apiList'][$api['groupHash']][] = $api;
}
$groupArr = ApiGroup::all();
$groupArr = $this->buildArrFromObj($groupArr);
$groupArr = Tools::buildArrFromObj($groupArr);
$res['groupInfo'] = array_column($groupArr, 'name', 'hash');
$res['groupInfo']['default'] = '默认分组';
$id = $this->request->get('id', 0);

View File

@ -10,6 +10,7 @@ namespace app\admin\controller;
use app\model\ApiAppGroup;
use app\util\ReturnCode;
use app\util\Tools;
class AppGroup extends Base {
/**
@ -44,7 +45,7 @@ class AppGroup extends Base {
$listInfo = (new ApiAppGroup())->where($where)->limit($start, $limit)->select();
$count = (new ApiAppGroup())->where($where)->count();
$listInfo = $this->buildArrFromObj($listInfo);
$listInfo = Tools::buildArrFromObj($listInfo);
return $this->buildSuccess([
'list' => $listInfo,

View File

@ -13,6 +13,7 @@ use app\model\ApiAuthGroupAccess;
use app\model\ApiAuthRule;
use app\model\ApiMenu;
use app\util\ReturnCode;
use app\util\Tools;
class Auth extends Base {
@ -38,7 +39,7 @@ class Auth extends Base {
$listInfo = (new ApiAuthGroup())->where($where)->order('id', 'DESC')->limit($start, $limit)->select();
$count = (new ApiAuthGroup())->where($where)->count();
$listInfo = $this->buildArrFromObj($listInfo);
$listInfo = Tools::buildArrFromObj($listInfo);
return $this->buildSuccess([
'list' => $listInfo,
@ -57,7 +58,7 @@ class Auth extends Base {
public function getGroups() {
$listInfo = (new ApiAuthGroup())->where(['status' => 1])->order('id', 'DESC')->select();
$count = count($listInfo);
$listInfo = $this->buildArrFromObj($listInfo);
$listInfo = Tools::buildArrFromObj($listInfo);
return $this->buildSuccess([
'list' => $listInfo,
@ -77,7 +78,7 @@ class Auth extends Base {
$groupId = $this->request->get('groupId', 0);
$list = (new ApiMenu)->where([])->order('sort', 'ASC')->select();
$list = $this->buildArrFromObj($list);
$list = Tools::buildArrFromObj($list);
$list = listToTree($list);
$rules = [];
@ -269,7 +270,7 @@ class Auth extends Base {
$postData = $this->request->post();
$needAdd = [];
$has = (new ApiAuthRule())->where(['groupId' => $postData['id']])->select();
$has = $this->buildArrFromObj($has);
$has = Tools::buildArrFromObj($has);
$hasRule = array_column($has, 'url');
$needDel = array_flip($hasRule);
foreach ($postData['rules'] as $key => $value) {

View File

@ -58,27 +58,6 @@ class Base extends Controller {
return $list;
}
/**
* 将查询的二维对象转换成二维数组
* @param array $res
* @param string $key
* @return array
* @author zhaoxiang <zhaoxiang051405@gmail.com>
*/
protected function buildArrFromObj($res, $key = '') {
$arr = [];
foreach ($res as $value) {
$value = $value->toArray();
if ($key) {
$arr[$value[$key]] = $value;
} else {
$arr[] = $value;
}
}
return $arr;
}
protected function debug($data) {
if ($data) {
$this->debug[] = $data;

View File

@ -12,6 +12,7 @@ use app\model\ApiFields;
use app\model\ApiList;
use app\util\DataType;
use app\util\ReturnCode;
use app\util\Tools;
class Fields extends Base {
private $dataType = array(
@ -45,7 +46,7 @@ class Fields extends Base {
if (!empty($hash)) {
$listInfo = (new ApiFields())->where(['hash' => $hash, 'type' => 0])->limit($start, $limit)->select();
$count = (new ApiFields())->where(['hash' => $hash, 'type' => 0])->count();
$listInfo = $this->buildArrFromObj($listInfo);
$listInfo = Tools::buildArrFromObj($listInfo);
return $this->buildSuccess([
'list' => $listInfo,
@ -73,7 +74,7 @@ class Fields extends Base {
if (!empty($hash)) {
$listInfo = (new ApiFields())->where(['hash' => $hash, 'type' => 1])->limit($start, $limit)->select();
$count = (new ApiFields())->where(['hash' => $hash, 'type' => 1])->count();
$listInfo = $this->buildArrFromObj($listInfo);
$listInfo = Tools::buildArrFromObj($listInfo);
return $this->buildSuccess([
'list' => $listInfo,
@ -159,7 +160,7 @@ class Fields extends Base {
'hash' => $hash,
'type' => $type
])->select();
$old = $this->buildArrFromObj($old);
$old = Tools::buildArrFromObj($old);
$oldArr = array_column($old, 'showName');
$newArr = array_column($dataArr, 'showName');
$addArr = array_diff($newArr, $oldArr);

View File

@ -10,6 +10,7 @@ namespace app\admin\controller;
use app\model\ApiGroup;
use app\util\ReturnCode;
use app\util\Tools;
class InterfaceGroup extends Base {
/**
@ -44,7 +45,7 @@ class InterfaceGroup extends Base {
$listInfo = (new ApiGroup())->where($where)->limit($start, $limit)->select();
$count = (new ApiGroup())->where($where)->count();
$listInfo = $this->buildArrFromObj($listInfo);
$listInfo = Tools::buildArrFromObj($listInfo);
return $this->buildSuccess([
'list' => $listInfo,

View File

@ -11,6 +11,7 @@ namespace app\admin\controller;
use app\model\ApiFields;
use app\model\ApiList;
use app\util\ReturnCode;
use app\util\Tools;
class InterfaceList extends Base {
/**
@ -49,7 +50,7 @@ class InterfaceList extends Base {
$listInfo = (new ApiList())->where($where)->order('id', 'DESC')->limit($start, $limit)->select();
$count = (new ApiList())->where($where)->count();
$listInfo = $this->buildArrFromObj($listInfo);
$listInfo = Tools::buildArrFromObj($listInfo);
return $this->buildSuccess([
'list' => $listInfo,

View File

@ -10,6 +10,7 @@ namespace app\admin\controller;
use app\model\ApiMenu;
use app\util\ReturnCode;
use app\util\Tools;
class Menu extends Base {
@ -21,7 +22,7 @@ class Menu extends Base {
*/
public function index() {
$list = (new ApiMenu)->where([])->order('sort', 'ASC')->select();
$list = $this->buildArrFromObj($list);
$list = Tools::buildArrFromObj($list);
$list = formatTree(listToTree($list));
return $this->buildSuccess([

View File

@ -49,19 +49,19 @@ class User extends Base {
$listInfo = (new ApiUser())->where($where)->order('regTime', 'DESC')->limit($start, $limit)->select();
$count = (new ApiUser())->where($where)->count();
$listInfo = $this->buildArrFromObj($listInfo);
$listInfo = Tools::buildArrFromObj($listInfo);
$idArr = array_column($listInfo, 'id');
$userData = ApiUserData::all(function($query) use ($idArr) {
$query->whereIn('uid', $idArr);
});
$userData = $this->buildArrFromObj($userData);
$userData = Tools::buildArrFromObj($userData);
$userData = $this->buildArrByNewKey($userData, 'uid');
$userGroup = ApiAuthGroupAccess::all(function($query) use ($idArr) {
$query->whereIn('uid', $idArr);
});
$userGroup = $this->buildArrFromObj($userGroup);
$userGroup = Tools::buildArrFromObj($userGroup);
$userGroup = $this->buildArrByNewKey($userGroup, 'uid');
foreach ($listInfo as $key => $value) {
@ -129,17 +129,17 @@ class User extends Base {
}
$listInfo = (new ApiAuthGroupAccess())->where(['groupId' => ['like', "%{$gid}%"]])->select();
$listInfo = $this->buildArrFromObj($listInfo);
$listInfo = Tools::buildArrFromObj($listInfo);
$uidArr = array_column($listInfo, 'uid');
$userInfo = (new ApiUser())->whereIn('id', $uidArr)->order('regTime', 'DESC')->limit($start, $limit)->select();
$count = (new ApiUser())->whereIn('id', $uidArr)->count();
$userInfo = $this->buildArrFromObj($userInfo);
$userInfo = Tools::buildArrFromObj($userInfo);
$userData = ApiUserData::all(function($query) use ($uidArr) {
$query->whereIn('uid', $uidArr);
});
$userData = $this->buildArrFromObj($userData);
$userData = Tools::buildArrFromObj($userData);
$userData = $this->buildArrByNewKey($userData, 'uid');
foreach ($userInfo as $key => $value) {

View File

@ -21,8 +21,4 @@ class DataType {
const TYPE_MOBILE = 8;
const TYPE_OBJECT = 9;
//JPush推送消息类型
const PUSH_SYSTEM_DATA = 1;
const PUSH_ACTIVITY_DATA = 2;
}

View File

@ -76,4 +76,25 @@ class Tools {
return false;
}
/**
* 将查询的二维对象转换成二维数组
* @param array $res
* @param string $key 允许指定索引值
* @return array
* @author zhaoxiang <zhaoxiang051405@gmail.com>
*/
public static function buildArrFromObj($res, $key = '') {
$arr = [];
foreach ($res as $value) {
$value = $value->toArray();
if ($key) {
$arr[$value[$key]] = $value;
} else {
$arr[] = $value;
}
}
return $arr;
}
}