// +---------------------------------------------------------------------- declare (strict_types=1); namespace app\store\controller; use think\response\Json; use app\store\model\Category as CategoryModel; /** * 商品分类 * Class Category * @package app\store\controller\goods */ class Category extends Controller { /** * 商品分类列表 * @return Json * @throws \think\db\exception\DataNotFoundException * @throws \think\db\exception\DbException * @throws \think\db\exception\ModelNotFoundException */ public function list(): Json { $params['p_store_id'] = $this->storeInfo->p_store_id; $model = new CategoryModel; $list = $model->getList($params); return $this->renderSuccess(compact('list')); } /** * 删除商品分类 * @param int $categoryId * @return Json */ public function delete(int $categoryId): Json { // 分类详情 $model = CategoryModel::detail($categoryId); if (!$model->remove()) { return $this->renderError($model->getError() ?: '删除失败'); } return $this->renderSuccess('删除成功'); } /** * 添加商品分类 * @return Json */ public function add(): Json { // 新增记录 $model = new CategoryModel; $postform = $this->postForm(); $postform['merchant_id'] = $this->merchantId; if ($model->add($postform)) { return $this->renderSuccess('添加成功'); } return $this->renderError($model->getError() ?: '添加失败'); } /** * 编辑商品分类 * @param int $categoryId * @return Json * @throws \think\db\exception\DataNotFoundException * @throws \think\db\exception\DbException * @throws \think\db\exception\ModelNotFoundException */ public function edit(int $categoryId): Json { // 分类详情 $model = CategoryModel::detail($categoryId, ['image']); // 更新记录 if ($model->edit($this->postForm())) { return $this->renderSuccess('更新成功'); } return $this->renderError($model->getError() ?: '更新失败'); } }