fix(delete): update delete operations to return affected rows for cabinets, rooms, and warehouses
This commit is contained in:
@@ -24,6 +24,6 @@ SET name = CASE WHEN sqlc.arg(name) = '' THEN name ELSE sqlc.arg(name) END,
|
|||||||
WHERE id = sqlc.arg(id)
|
WHERE id = sqlc.arg(id)
|
||||||
RETURNING *;
|
RETURNING *;
|
||||||
|
|
||||||
-- name: DeleteCabinet :exec
|
-- name: DeleteCabinet :execrows
|
||||||
DELETE FROM cabinets
|
DELETE FROM cabinets
|
||||||
WHERE id = sqlc.arg(id);
|
WHERE id = sqlc.arg(id);
|
||||||
|
|||||||
@@ -21,6 +21,6 @@ SET name = sqlc.arg(name),
|
|||||||
WHERE id = sqlc.arg(id)
|
WHERE id = sqlc.arg(id)
|
||||||
RETURNING *;
|
RETURNING *;
|
||||||
|
|
||||||
-- name: DeleteRole :exec
|
-- name: DeleteRole :execrows
|
||||||
DELETE FROM roles
|
DELETE FROM roles
|
||||||
WHERE id = sqlc.arg(id);
|
WHERE id = sqlc.arg(id);
|
||||||
|
|||||||
@@ -24,6 +24,6 @@ SET name = CASE WHEN sqlc.arg(name) = '' THEN name ELSE sqlc.arg(name) END,
|
|||||||
WHERE id = sqlc.arg(id)
|
WHERE id = sqlc.arg(id)
|
||||||
RETURNING *;
|
RETURNING *;
|
||||||
|
|
||||||
-- name: DeleteRoom :exec
|
-- name: DeleteRoom :execrows
|
||||||
DELETE FROM rooms
|
DELETE FROM rooms
|
||||||
WHERE id = sqlc.arg(id);
|
WHERE id = sqlc.arg(id);
|
||||||
|
|||||||
@@ -25,6 +25,6 @@ SET name = CASE WHEN sqlc.arg(name) = '' THEN name ELSE sqlc.arg(name) END,
|
|||||||
WHERE id = sqlc.arg(id)
|
WHERE id = sqlc.arg(id)
|
||||||
RETURNING *;
|
RETURNING *;
|
||||||
|
|
||||||
-- name: DeleteWarehouse :exec
|
-- name: DeleteWarehouse :execrows
|
||||||
DELETE FROM warehouses
|
DELETE FROM warehouses
|
||||||
WHERE id = sqlc.arg(id);
|
WHERE id = sqlc.arg(id);
|
||||||
|
|||||||
@@ -43,6 +43,10 @@ func UpdateCabinet(ctx context.Context, queries *db.Queries, body models.Cabinet
|
|||||||
return *mapper.ToDomainCabinet(result), nil
|
return *mapper.ToDomainCabinet(result), nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func DeleteCabinet(ctx context.Context, queries *db.Queries, id int64) error {
|
func DeleteCabinet(ctx context.Context, queries *db.Queries, id int64) (rowAffected int64, err error) {
|
||||||
return queries.DeleteCabinet(ctx, id)
|
rowsAffected, err := queries.DeleteCabinet(ctx, id)
|
||||||
|
if err != nil {
|
||||||
|
return rowAffected, err
|
||||||
|
}
|
||||||
|
return rowsAffected, nil
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -43,6 +43,10 @@ func UpdateRoom(ctx context.Context, queries *db.Queries, body models.Room) (mod
|
|||||||
return *mapper.ToDomainRoom(result), nil
|
return *mapper.ToDomainRoom(result), nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func DeleteRoom(ctx context.Context, queries *db.Queries, id int64) error {
|
func DeleteRoom(ctx context.Context, queries *db.Queries, id int64) (int64, error) {
|
||||||
return queries.DeleteRoom(ctx, id)
|
rowsAffected, err := queries.DeleteRoom(ctx, id)
|
||||||
|
if err != nil {
|
||||||
|
return rowsAffected, err
|
||||||
|
}
|
||||||
|
return rowsAffected, nil
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -43,6 +43,10 @@ func UpdateWarehouse(ctx context.Context, queries *db.Queries, body models.Wareh
|
|||||||
return *mapper.ToDomainWarehouse(result), nil
|
return *mapper.ToDomainWarehouse(result), nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func DeleteWarehouse(ctx context.Context, queries *db.Queries, id int64) error {
|
func DeleteWarehouse(ctx context.Context, queries *db.Queries, id int64) (int64, error) {
|
||||||
return queries.DeleteWarehouse(ctx, id)
|
rowsAffected, err := queries.DeleteWarehouse(ctx, id)
|
||||||
|
if err != nil {
|
||||||
|
return rowsAffected, err
|
||||||
|
}
|
||||||
|
return rowsAffected, nil
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -171,11 +171,16 @@ func CabinetDelete(c *gin.Context) error {
|
|||||||
response.BadRequestError(c, http.StatusBadRequest, "Invalid ID")
|
response.BadRequestError(c, http.StatusBadRequest, "Invalid ID")
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
err = repositories.DeleteCabinet(c.Request.Context(), global.Queries, id)
|
rowsAffected, err := repositories.DeleteCabinet(c.Request.Context(), global.Queries, id)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
if rowsAffected == 0 {
|
||||||
|
response.NotFoundError(c, http.StatusNotFound, "Cabinet not found")
|
||||||
|
return nil
|
||||||
|
}
|
||||||
response.InternalServerError(c, http.StatusInternalServerError, "Failed to delete cabinet")
|
response.InternalServerError(c, http.StatusInternalServerError, "Failed to delete cabinet")
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
response.Ok(c, "Đã xóa thành công", nil)
|
|
||||||
|
response.Ok(c, "Delete Success", nil)
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -172,12 +172,16 @@ func RoomDelete(c *gin.Context) error {
|
|||||||
response.BadRequestError(c, http.StatusBadRequest, "Invalid ID")
|
response.BadRequestError(c, http.StatusBadRequest, "Invalid ID")
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
err = repositories.DeleteRoom(c.Request.Context(), global.Queries, id)
|
rowsAffected, err := repositories.DeleteRoom(c.Request.Context(), global.Queries, id)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Error().Err(err).Msgf("Failed to delete room with ID: %d", id)
|
log.Error().Err(err).Msgf("Failed to delete room with ID: %d", id)
|
||||||
|
if rowsAffected == 0 {
|
||||||
|
response.NotFoundError(c, http.StatusNotFound, "Room not found")
|
||||||
|
return nil
|
||||||
|
}
|
||||||
response.InternalServerError(c, http.StatusInternalServerError, "Failed to delete room")
|
response.InternalServerError(c, http.StatusInternalServerError, "Failed to delete room")
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
response.Ok(c, "Đã xóa thành công", nil)
|
response.Ok(c, "Delete Success", nil)
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -13,6 +13,7 @@ import (
|
|||||||
"wm-backend/response"
|
"wm-backend/response"
|
||||||
|
|
||||||
"github.com/gin-gonic/gin"
|
"github.com/gin-gonic/gin"
|
||||||
|
"github.com/rs/zerolog/log"
|
||||||
)
|
)
|
||||||
|
|
||||||
// WareHouseCreate creates a new warehouse.
|
// WareHouseCreate creates a new warehouse.
|
||||||
@@ -161,11 +162,16 @@ func WareHouseDelete(c *gin.Context) error {
|
|||||||
response.BadRequestError(c, http.StatusBadRequest, "Invalid ID")
|
response.BadRequestError(c, http.StatusBadRequest, "Invalid ID")
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
err = repositories.DeleteWarehouse(c.Request.Context(), global.Queries, id)
|
rowsAffected, err := repositories.DeleteWarehouse(c.Request.Context(), global.Queries, id)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
log.Error().Err(err).Msgf("Failed to delete warehouse with ID: %d", id)
|
||||||
|
if rowsAffected == 0 {
|
||||||
|
response.NotFoundError(c, http.StatusNotFound, "Warehouse not found")
|
||||||
|
return nil
|
||||||
|
}
|
||||||
response.InternalServerError(c, http.StatusInternalServerError, "Failed to delete warehouse")
|
response.InternalServerError(c, http.StatusInternalServerError, "Failed to delete warehouse")
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
response.Ok(c, "Đã xóa thành công", nil)
|
response.Ok(c, "Delete Success", nil)
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -49,14 +49,17 @@ func (q *Queries) CreateCabinet(ctx context.Context, arg CreateCabinetParams) (C
|
|||||||
return i, err
|
return i, err
|
||||||
}
|
}
|
||||||
|
|
||||||
const deleteCabinet = `-- name: DeleteCabinet :exec
|
const deleteCabinet = `-- name: DeleteCabinet :execrows
|
||||||
DELETE FROM cabinets
|
DELETE FROM cabinets
|
||||||
WHERE id = $1
|
WHERE id = $1
|
||||||
`
|
`
|
||||||
|
|
||||||
func (q *Queries) DeleteCabinet(ctx context.Context, id int64) error {
|
func (q *Queries) DeleteCabinet(ctx context.Context, id int64) (int64, error) {
|
||||||
_, err := q.db.Exec(ctx, deleteCabinet, id)
|
result, err := q.db.Exec(ctx, deleteCabinet, id)
|
||||||
return err
|
if err != nil {
|
||||||
|
return 0, err
|
||||||
|
}
|
||||||
|
return result.RowsAffected(), nil
|
||||||
}
|
}
|
||||||
|
|
||||||
const getCabinetByID = `-- name: GetCabinetByID :one
|
const getCabinetByID = `-- name: GetCabinetByID :one
|
||||||
|
|||||||
@@ -18,10 +18,10 @@ type Querier interface {
|
|||||||
CreateRoom(ctx context.Context, arg CreateRoomParams) (Room, error)
|
CreateRoom(ctx context.Context, arg CreateRoomParams) (Room, error)
|
||||||
CreateUser(ctx context.Context, arg CreateUserParams) (uuid.UUID, error)
|
CreateUser(ctx context.Context, arg CreateUserParams) (uuid.UUID, error)
|
||||||
CreateWarehouse(ctx context.Context, arg CreateWarehouseParams) (Warehouse, error)
|
CreateWarehouse(ctx context.Context, arg CreateWarehouseParams) (Warehouse, error)
|
||||||
DeleteCabinet(ctx context.Context, id int64) error
|
DeleteCabinet(ctx context.Context, id int64) (int64, error)
|
||||||
DeleteRole(ctx context.Context, id uuid.UUID) error
|
DeleteRole(ctx context.Context, id uuid.UUID) (int64, error)
|
||||||
DeleteRoom(ctx context.Context, id int64) error
|
DeleteRoom(ctx context.Context, id int64) (int64, error)
|
||||||
DeleteWarehouse(ctx context.Context, id int64) error
|
DeleteWarehouse(ctx context.Context, id int64) (int64, error)
|
||||||
GetCabinetByID(ctx context.Context, id int64) (Cabinet, error)
|
GetCabinetByID(ctx context.Context, id int64) (Cabinet, error)
|
||||||
GetRoleByID(ctx context.Context, id uuid.UUID) (Role, error)
|
GetRoleByID(ctx context.Context, id uuid.UUID) (Role, error)
|
||||||
GetRoomByID(ctx context.Context, id int64) (Room, error)
|
GetRoomByID(ctx context.Context, id int64) (Room, error)
|
||||||
|
|||||||
@@ -40,14 +40,17 @@ func (q *Queries) CreateRole(ctx context.Context, arg CreateRoleParams) (Role, e
|
|||||||
return i, err
|
return i, err
|
||||||
}
|
}
|
||||||
|
|
||||||
const deleteRole = `-- name: DeleteRole :exec
|
const deleteRole = `-- name: DeleteRole :execrows
|
||||||
DELETE FROM roles
|
DELETE FROM roles
|
||||||
WHERE id = $1
|
WHERE id = $1
|
||||||
`
|
`
|
||||||
|
|
||||||
func (q *Queries) DeleteRole(ctx context.Context, id uuid.UUID) error {
|
func (q *Queries) DeleteRole(ctx context.Context, id uuid.UUID) (int64, error) {
|
||||||
_, err := q.db.Exec(ctx, deleteRole, id)
|
result, err := q.db.Exec(ctx, deleteRole, id)
|
||||||
return err
|
if err != nil {
|
||||||
|
return 0, err
|
||||||
|
}
|
||||||
|
return result.RowsAffected(), nil
|
||||||
}
|
}
|
||||||
|
|
||||||
const getRoleByID = `-- name: GetRoleByID :one
|
const getRoleByID = `-- name: GetRoleByID :one
|
||||||
|
|||||||
@@ -49,14 +49,17 @@ func (q *Queries) CreateRoom(ctx context.Context, arg CreateRoomParams) (Room, e
|
|||||||
return i, err
|
return i, err
|
||||||
}
|
}
|
||||||
|
|
||||||
const deleteRoom = `-- name: DeleteRoom :exec
|
const deleteRoom = `-- name: DeleteRoom :execrows
|
||||||
DELETE FROM rooms
|
DELETE FROM rooms
|
||||||
WHERE id = $1
|
WHERE id = $1
|
||||||
`
|
`
|
||||||
|
|
||||||
func (q *Queries) DeleteRoom(ctx context.Context, id int64) error {
|
func (q *Queries) DeleteRoom(ctx context.Context, id int64) (int64, error) {
|
||||||
_, err := q.db.Exec(ctx, deleteRoom, id)
|
result, err := q.db.Exec(ctx, deleteRoom, id)
|
||||||
return err
|
if err != nil {
|
||||||
|
return 0, err
|
||||||
|
}
|
||||||
|
return result.RowsAffected(), nil
|
||||||
}
|
}
|
||||||
|
|
||||||
const getRoomByID = `-- name: GetRoomByID :one
|
const getRoomByID = `-- name: GetRoomByID :one
|
||||||
|
|||||||
@@ -49,14 +49,17 @@ func (q *Queries) CreateWarehouse(ctx context.Context, arg CreateWarehouseParams
|
|||||||
return i, err
|
return i, err
|
||||||
}
|
}
|
||||||
|
|
||||||
const deleteWarehouse = `-- name: DeleteWarehouse :exec
|
const deleteWarehouse = `-- name: DeleteWarehouse :execrows
|
||||||
DELETE FROM warehouses
|
DELETE FROM warehouses
|
||||||
WHERE id = $1
|
WHERE id = $1
|
||||||
`
|
`
|
||||||
|
|
||||||
func (q *Queries) DeleteWarehouse(ctx context.Context, id int64) error {
|
func (q *Queries) DeleteWarehouse(ctx context.Context, id int64) (int64, error) {
|
||||||
_, err := q.db.Exec(ctx, deleteWarehouse, id)
|
result, err := q.db.Exec(ctx, deleteWarehouse, id)
|
||||||
return err
|
if err != nil {
|
||||||
|
return 0, err
|
||||||
|
}
|
||||||
|
return result.RowsAffected(), nil
|
||||||
}
|
}
|
||||||
|
|
||||||
const getWarehouseByID = `-- name: GetWarehouseByID :one
|
const getWarehouseByID = `-- name: GetWarehouseByID :one
|
||||||
|
|||||||
Reference in New Issue
Block a user