multi-store/app/admin/logic/setting/CategoryLogic.php
2024-05-30 21:37:55 +08:00

108 lines
2.6 KiB
PHP

<?php
namespace app\admin\logic\setting;
use app\common\model\setting\Category;
use app\common\logic\BaseLogic;
use think\facade\Db;
/**
* 分类表逻辑
* Class CategoryLogic
* @package app\admin\logic\setting
*/
class CategoryLogic extends BaseLogic
{
/**
* @notes 添加分类表
* @param array $params
* @return bool
* @author likeadmin
* @date 2024/02/05 16:13
*/
public static function add(array $params): bool
{
Db::startTrans();
try {
Category::create([
'category_id' => $params['category_id'],
'pid' => $params['pid'],
'cate_name' => $params['cate_name'],
'path' => $params['path'],
'sort' => $params['sort'],
'pic' => $params['pic'],
'is_show' => $params['is_show'],
'level' => $params['level']
]);
Db::commit();
return true;
} catch (\Exception $e) {
Db::rollback();
self::setError($e->getMessage());
return false;
}
}
/**
* @notes 编辑分类表
* @param array $params
* @return bool
* @author likeadmin
* @date 2024/02/05 16:13
*/
public static function edit(array $params): bool
{
Db::startTrans();
try {
Category::where('category_id', $params['category_id'])->update([
'category_id' => $params['category_id'],
'pid' => $params['pid'],
'cate_name' => $params['cate_name'],
'path' => $params['path'],
'sort' => $params['sort'],
'pic' => $params['pic'],
'is_show' => $params['is_show'],
'level' => $params['level']
]);
Db::commit();
return true;
} catch (\Exception $e) {
Db::rollback();
self::setError($e->getMessage());
return false;
}
}
/**
* @notes 删除分类表
* @param array $params
* @return bool
* @author likeadmin
* @date 2024/02/05 16:13
*/
public static function delete(array $params): bool
{
return Category::destroy($params['category_id']);
}
/**
* @notes 获取分类表详情
* @param $params
* @return array
* @author likeadmin
* @date 2024/02/05 16:13
*/
public static function detail($params): array
{
return Category::findOrEmpty($params['category_id'])->toArray();
}
}