controllers

package
v0.0.0-...-882e1b3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 17, 2025 License: GPL-3.0 Imports: 10 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AddSong

func AddSong(c *gin.Context, db *sql.DB, externalAPIUrl string)

AddSong godoc @Summary Добавление новой песни @Description Добавление новой песни с обогащением через внешний API. @Tags songs @Accept json @Produce json @Param song body models.Song true "Данные песни (обязательны поля group и song)" @Success 201 {object} map[string]int "ID добавленной песни" @Failure 400 {object} map[string]string @Failure 500 {object} map[string]string @Router /songs [post]

func DeleteSong

func DeleteSong(c *gin.Context, db *sql.DB)

DeleteSong godoc @Summary Удаление песни @Description Удаление песни по ID. @Tags songs @Accept json @Produce json @Param id path int true "ID песни" @Success 200 {object} map[string]string "Песня удалена" @Failure 400 {object} map[string]string @Failure 404 {object} map[string]string @Router /songs/{id} [delete]

func GetSongLyrics

func GetSongLyrics(c *gin.Context, db *sql.DB)

GetSongLyrics godoc @Summary Получение текста песни @Description Получение текста песни, разделённого на куплеты, с пагинацией. @Tags songs @Accept json @Produce json @Param id path int true "ID песни" @Param page query int false "Номер страницы" default(1) @Param limit query int false "Количество куплетов на страницу" default(1) @Success 200 {object} map[string]interface{} @Failure 400 {object} map[string]string @Failure 404 {object} map[string]string @Router /songs/{id}/lyrics [get]

func GetSongs

func GetSongs(c *gin.Context, db *sql.DB)

GetSongs godoc @Summary Получение списка песен @Description Получение списка песен с фильтрацией по группе и названию, а также с пагинацией. @Tags songs @Accept json @Produce json @Param group query string false "Фильтр по группе" @Param song query string false "Фильтр по названию песни" @Param page query int false "Номер страницы" default(1) @Param limit query int false "Количество записей на странице" default(10) @Success 200 {array} models.Song @Failure 500 {object} map[string]string @Router /songs [get]

func UpdateSong

func UpdateSong(c *gin.Context, db *sql.DB)

UpdateSong godoc @Summary Обновление песни @Description Обновление данных песни по ID. @Tags songs @Accept json @Produce json @Param id path int true "ID песни" @Param song body models.Song true "Обновлённые данные песни" @Success 200 {object} map[string]string "Песня обновлена" @Failure 400 {object} map[string]string @Failure 500 {object} map[string]string @Router /songs/{id} [put]

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL