diff --git a/app/admin/controller/v1/ProductTcoCategory.php b/app/admin/controller/v1/ProductTcoCategory.php new file mode 100644 index 00000000..d54f4fbc --- /dev/null +++ b/app/admin/controller/v1/ProductTcoCategory.php @@ -0,0 +1,34 @@ +param(['name']); + + $categorys = ProductTcoCategoryModel::field([ + 'tco_id' => 'id', + 'tco_pid' => 'pid', + 'name', + ]) + ->withSearch(['name'], [ + 'name' => $param['name'] ?? null, + ]) + ->language(request()->lang_id) + ->enabled() + ->order(['id' => 'asc']) + ->select() + ->toArray(); + + return success('获取成功', array_to_tree($categorys, 0, 'pid', false)); + } +} diff --git a/app/admin/model/v1/ProductTcoCategoryModel.php b/app/admin/model/v1/ProductTcoCategoryModel.php new file mode 100644 index 00000000..596fcb37 --- /dev/null +++ b/app/admin/model/v1/ProductTcoCategoryModel.php @@ -0,0 +1,40 @@ +where('language_id', '=', $value); + } + + // 按分类名称搜索 + public function searchNameAttr($query, $value, $data) + { + if (is_null($value)) { + return; + } + $query->where('name', 'like', "%{$value}%"); + } + + // 只查询启用的 + public function scopeEnabled($query) + { + $query->where('disabled', '=', 0); + } +} diff --git a/app/admin/route/v1.php b/app/admin/route/v1.php index 56c78ff1..0bb85490 100644 --- a/app/admin/route/v1.php +++ b/app/admin/route/v1.php @@ -269,7 +269,10 @@ Route::group('v1', function () { // 产品分类 Route::group('category', function () { - // 分类列表 + // tco分类树 + Route::get('tco/tree', 'ProductTcoCategory/tree'); + + // 分类树 Route::get('index', 'ProductCategory/index'); // 分类详情