Added completed user. Some fixes and more more more...

This commit is contained in:
KamilM1205 2026-01-02 22:56:25 +04:00
parent b96dd39795
commit ea8ab7c0ed
33 changed files with 576 additions and 212 deletions

View file

@ -36,6 +36,7 @@ func CreateImagesController(images_path string, service *services.ImagesService)
// @Success 200 {object} responses.ImageResponse
// @Failure 500 {object} responses.ErrorResponse
// @Router /images/ [post]
// @Security BasicAuth
func (r *ImagesController) PostImage(c *gin.Context) {
file, err := c.FormFile("file")
if err != nil {
@ -139,6 +140,21 @@ func (r *ImagesController) GetImage(c *gin.Context) {
c.File(filePath)
}
// @Summary Delete image by path
// @Description Delete image from server by given path
// @Tags images
// @Param filename path string true "Path to image"
// @Produce image/png
// @Produce image/jpeg
// @Success 200 {object} responses.GetAllImagesList
// @Failure 400 {object} responses.ErrorResponse
// @Failure 404 {object} responses.ErrorResponse
// @Failure 500 {object} responses.ErrorResponse
// @Router /images [get]
func (r *ImagesController) GetAllImage(c *gin.Context) {
panic("Not implemented")
}
// @Summary Delete image by path
// @Description Delete image from server by given path
// @Tags images
@ -150,6 +166,7 @@ func (r *ImagesController) GetImage(c *gin.Context) {
// @Failure 404 {object} responses.ErrorResponse
// @Failure 500 {object} responses.ErrorResponse
// @Router /images/{path} [delete]
// @Security BasicAuth
func (r *ImagesController) DeleteImage(c *gin.Context) {
panic("Not implemented")
}

View file

@ -40,6 +40,8 @@ func CreatePostController(service *services.PostService, userService *services.U
// @Failure 400 {object} responses.ErrorResponse
// @Failure 500 {object} responses.ErrorResponse
// @Router /post [post]
//
// @Security BasicAuth
func (r *PostController) Post(c *gin.Context) {
var request requests.CreatePostRequest
@ -227,6 +229,8 @@ func (r *PostController) GetById(c *gin.Context) {
// @Failure 404 {object} responses.ErrorResponse
// @Failure 500 {object} responses.ErrorResponse
// @Router /post/{id} [put]
//
// @Security BasicAuth
func (r *PostController) Put(c *gin.Context) {
var request requests.PutPostRequest
@ -276,6 +280,8 @@ func (r *PostController) Put(c *gin.Context) {
// @Failure 404 {object} responses.ErrorResponse
// @Failure 500 {object} responses.ErrorResponse
// @Router /post/{id} [delete]
//
// @Security BasicAuth
func (r *PostController) Delete(c *gin.Context) {
id := c.Param("id")
id_valid, err := uuid.Parse(id)

View file

@ -10,6 +10,7 @@ import (
"58team_blog/internal/utils"
"log"
"net/http"
"strings"
"github.com/gin-contrib/sessions"
"github.com/gin-gonic/gin"
@ -107,6 +108,7 @@ func (r *UserController) Login(c *gin.Context) {
// @Failure 400 {object} responses.ErrorResponse
// @Failure 500 {object} responses.ErrorResponse
// @Router /logout [get]
// @Security BasicAuth
func (r *UserController) Logout(c *gin.Context) {
session := sessions.Default(c)
user := session.Get("user")
@ -132,7 +134,8 @@ func (r *UserController) Logout(c *gin.Context) {
// @Failure 400 {object} responses.ErrorResponse
// @Failure 409 {object} responses.ErrorResponse
// @Failure 500 {object} responses.ErrorResponse
// @Router /user/ [post]
// @Router /team/ [post]
// @Security BasicAuth
func (r *UserController) Post(c *gin.Context) {
var request requests.CreateUserRequest
if err := c.BindJSON(&request); err != nil {
@ -151,8 +154,17 @@ func (r *UserController) Post(c *gin.Context) {
}
cmd := commands.CreateUserCommand{
Username: request.Username,
Password: encrypted_password,
Username: request.Username,
Password: encrypted_password,
Role: request.Role,
Name: request.Name,
Speciality: request.Speciality,
Description: request.Description,
Skills: strings.Join(request.Skills, ";"),
Avatar: request.Avatar,
JoinDate: request.JoinDate,
Projects: strings.Join(request.Projects, ";"),
Motto: request.Motto,
}
user, err := r.service.Create(cmd)
@ -177,7 +189,7 @@ func (r *UserController) Post(c *gin.Context) {
// @Failure 400 {object} responses.ErrorResponse
// @Failure 404 {object} responses.ErrorResponse
// @Failure 500 {object} responses.ErrorResponse
// @Router /user/{id} [get]
// @Router /team/{id} [get]
func (r *UserController) FindById(c *gin.Context) {
id_path := c.Param("id")
@ -214,7 +226,7 @@ func (r *UserController) FindById(c *gin.Context) {
// @Failure 400 {object} responses.ErrorResponse
// @Failure 404 {object} responses.ErrorResponse
// @Failure 500 {object} responses.ErrorResponse
// @Router /user/name/{name} [get]
// @Router /team/name/{name} [get]
func (r *UserController) FindByName(c *gin.Context) {
name := c.Param("name")
@ -230,6 +242,7 @@ func (r *UserController) FindByName(c *gin.Context) {
}
response := mapper.ResponseFromUserFindByNameResult(user)
c.JSON(http.StatusOK, response)
}
@ -240,7 +253,7 @@ func (r *UserController) FindByName(c *gin.Context) {
// @Success 200 {object} responses.UserResponseList
// @Failure 400 {object} responses.ErrorResponse
// @Failure 500 {object} responses.ErrorResponse
// @Router /user/ [get]
// @Router /members/ [get]
func (r *UserController) GetAll(c *gin.Context) {
users, err := r.service.GetAll()
if err != nil {
@ -249,8 +262,9 @@ func (r *UserController) GetAll(c *gin.Context) {
return
}
responses := mapper.ResponseFromUserGetAllResult(users)
c.JSON(http.StatusOK, responses)
resp := mapper.ResponseFromUserGetAllResult(users)
c.JSON(http.StatusOK, resp)
}
// @Summary Change user
@ -264,7 +278,8 @@ func (r *UserController) GetAll(c *gin.Context) {
// @Failure 400 {object} responses.ErrorResponse
// @Failure 404 {object} responses.ErrorResponse
// @Failure 500 {object} responses.ErrorResponse
// @Router /user/{id} [put]
// @Router /team/{id} [put]
// @Security BasicAuth
func (r *UserController) Put(c *gin.Context) {
var request requests.PutUserRequest
id_path := c.Param("id")
@ -292,10 +307,21 @@ func (r *UserController) Put(c *gin.Context) {
return
}
skills := strings.Join(request.Skills, ";")
projects := strings.Join(request.Projects, ";")
cmd := commands.UpdateUserCommand{
Id: id,
Username: request.Username,
Password: password,
Id: id,
Username: request.Username,
Name: request.Name,
Password: password,
Role: request.Role,
Speciality: request.Speciality,
Description: request.Description,
Skills: skills,
Avatar: request.Avatar,
Projects: projects,
Motto: request.Motto,
}
user, err := r.service.Update(cmd)
@ -318,7 +344,8 @@ func (r *UserController) Put(c *gin.Context) {
// @Failure 400 {object} responses.ErrorResponse
// @Failure 404 {object} responses.ErrorResponse
// @Failure 500 {object} responses.ErrorResponse
// @Router /user/{id} [delete]
// @Router /team/{id} [delete]
// @Security BasicAuth
func (r *UserController) Delete(c *gin.Context) {
id_path := c.Param("id")