$params['name'], 'image' => $params['image'] ? FileService::setFileUrl($params['image']) : '', 'image_ext' => $params['image_ext'], 'link' => $params['link'], 'loca' => $params['loca'], 'is_show' => $params['is_show'], 'sort' => $params['sort'], 'langs' => json_encode($params['langs'], JSON_UNESCAPED_UNICODE), ]); Db::commit(); return true; } catch (\Exception $e) { Db::rollback(); self::setError($e->getMessage()); return false; } } /** * @notes 编辑菜单按钮 * @param array $params * @return bool * @author BD * @date 2024/03/17 16:41 */ public static function edit(array $params): bool { Db::startTrans(); try { DecorateNav::where('id', $params['id'])->update([ 'name' => $params['name'], 'image' => $params['image'] ? FileService::setFileUrl($params['image']) : '', 'image_ext' => $params['image_ext'], 'link' => $params['link'], 'loca' => $params['loca'], 'is_show' => $params['is_show'], 'sort' => $params['sort'], 'langs' => json_encode($params['langs'], JSON_UNESCAPED_UNICODE), ]); Db::commit(); return true; } catch (\Exception $e) { Db::rollback(); self::setError($e->getMessage()); return false; } } /** * @notes 删除菜单按钮 * @param array $params * @return bool * @author BD * @date 2024/03/17 16:41 */ public static function delete(array $params): bool { return DecorateNav::destroy($params['id']); } /** * @notes 获取菜单按钮详情 * @param $params * @return array * @author BD * @date 2024/03/17 16:41 */ public static function detail($params): array { return DecorateNav::findOrEmpty($params['id'])->toArray(); } }