diff --git a/niucloud/app/api/controller/sys/Area.php b/niucloud/app/api/controller/sys/Area.php index 5bbe776f..c56f3e08 100644 --- a/niucloud/app/api/controller/sys/Area.php +++ b/niucloud/app/api/controller/sys/Area.php @@ -15,6 +15,7 @@ use addon\zhjw\app\service\admin\common\CommonService; use app\model\sys\SysArea; use app\service\api\sys\AreaService; use core\base\BaseApiController; +use think\facade\Cache; use think\Response; class Area extends BaseApiController @@ -68,15 +69,23 @@ class Area extends BaseApiController { // 获取所有地址数据 - $areas = SysArea::where('status', 1) - ->order('sort', 'asc') - ->select() - ->toArray(); + //获取缓存getAreaTree + $getAreaTree = Cache::get('getAreaTree'); - // 构建树形结构 - $tree = (new CommonService())->areaBuildTree($areas); + if ($getAreaTree) { + return success($getAreaTree); + }else{ + $areas = SysArea::where('status', 1) + ->order('sort', 'asc') + ->select() + ->toArray(); - return success($tree); + // 构建树形结构 + $getAreaTree = (new CommonService())->areaBuildTree($areas); + //设置缓存 + Cache::set('getAreaTree', $getAreaTree, 3600);//缓存一个小时 + return success($getAreaTree); + } } }