$params['name'], 'pid' => $params['pid'], 'level' => $params['level'], 'sort' => $params['sort'], 'is_show' => $params['is_show'], 'is_recommend' => $params['is_recommend'], 'image' => $params['image'], 'remark' => $params['remark'], 'del' => $params['del'] ]); Db::commit(); return true; } catch (\Exception $e) { Db::rollback(); self::setError($e->getMessage()); return false; } } public static function getAllTree() { $lists = Db::name('goods_category') ->field(['name', 'id', 'pid', 'level']) ->where(['del' => 0]) ->order(['sort' => 'desc']) ->select()->toArray(); return $lists; } public static function categoryThirdTree() { $lists = Db::name('goods_category') ->where(['del' => 0]) ->order('id asc') ->column('id,name,pid,is_recommend,is_show,level,image,sort'); foreach ($lists as $k => $item){ $lists[$k]['image'] = UrlServer::getFileUrl($item['image']); } $lists = linear_to_tree($lists); foreach ($lists as $key => $list){ if(1 == $list['is_recommend']){ $sub = []; foreach ($list['children'] as $key1 => $sub1){ $sub1['is_recommend'] = 1; foreach ($sub1['children'] as $key2 => $sub2){ $sub1['children'][$key2]['is_recommend'] = 1; } $sub[] = $sub1; } $lists[$key]['children'] = $sub; } } return $lists; } /** * @notes 编辑 * @param array $params * @return bool * @author likeadmin * @date 2025/05/20 17:35 */ public static function edit(array $params): bool { Db::startTrans(); try { GoodsCategory::where('id', $params['id'])->update([ 'name' => $params['name'], 'pid' => $params['pid'], 'level' => $params['level'], 'sort' => $params['sort'], 'is_show' => $params['is_show'], 'is_recommend' => $params['is_recommend'], 'image' => $params['image'], 'remark' => $params['remark'], 'del' => $params['del'] ]); Db::commit(); return true; } catch (\Exception $e) { Db::rollback(); self::setError($e->getMessage()); return false; } } /** * @notes 删除 * @param array $params * @return bool * @author likeadmin * @date 2025/05/20 17:35 */ public static function delete(array $params): bool { return GoodsCategory::destroy($params['id']); } /** * @notes 获取详情 * @param $params * @return array * @author likeadmin * @date 2025/05/20 17:35 */ public static function detail($params): array { return GoodsCategory::findOrEmpty($params['id'])->toArray(); } }