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)
|
||||
RETURNING *;
|
||||
|
||||
-- name: DeleteCabinet :exec
|
||||
-- name: DeleteCabinet :execrows
|
||||
DELETE FROM cabinets
|
||||
WHERE id = sqlc.arg(id);
|
||||
|
||||
@@ -21,6 +21,6 @@ SET name = sqlc.arg(name),
|
||||
WHERE id = sqlc.arg(id)
|
||||
RETURNING *;
|
||||
|
||||
-- name: DeleteRole :exec
|
||||
-- name: DeleteRole :execrows
|
||||
DELETE FROM roles
|
||||
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)
|
||||
RETURNING *;
|
||||
|
||||
-- name: DeleteRoom :exec
|
||||
-- name: DeleteRoom :execrows
|
||||
DELETE FROM rooms
|
||||
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)
|
||||
RETURNING *;
|
||||
|
||||
-- name: DeleteWarehouse :exec
|
||||
-- name: DeleteWarehouse :execrows
|
||||
DELETE FROM warehouses
|
||||
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
|
||||
}
|
||||
|
||||
func DeleteCabinet(ctx context.Context, queries *db.Queries, id int64) error {
|
||||
return queries.DeleteCabinet(ctx, id)
|
||||
func DeleteCabinet(ctx context.Context, queries *db.Queries, id int64) (rowAffected int64, err error) {
|
||||
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
|
||||
}
|
||||
|
||||
func DeleteRoom(ctx context.Context, queries *db.Queries, id int64) error {
|
||||
return queries.DeleteRoom(ctx, id)
|
||||
func DeleteRoom(ctx context.Context, queries *db.Queries, id int64) (int64, error) {
|
||||
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
|
||||
}
|
||||
|
||||
func DeleteWarehouse(ctx context.Context, queries *db.Queries, id int64) error {
|
||||
return queries.DeleteWarehouse(ctx, id)
|
||||
func DeleteWarehouse(ctx context.Context, queries *db.Queries, id int64) (int64, error) {
|
||||
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")
|
||||
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 rowsAffected == 0 {
|
||||
response.NotFoundError(c, http.StatusNotFound, "Cabinet not found")
|
||||
return nil
|
||||
}
|
||||
response.InternalServerError(c, http.StatusInternalServerError, "Failed to delete cabinet")
|
||||
return nil
|
||||
}
|
||||
response.Ok(c, "Đã xóa thành công", nil)
|
||||
|
||||
response.Ok(c, "Delete Success", nil)
|
||||
return nil
|
||||
}
|
||||
|
||||
@@ -172,12 +172,16 @@ func RoomDelete(c *gin.Context) error {
|
||||
response.BadRequestError(c, http.StatusBadRequest, "Invalid ID")
|
||||
return nil
|
||||
}
|
||||
err = repositories.DeleteRoom(c.Request.Context(), global.Queries, id)
|
||||
rowsAffected, err := repositories.DeleteRoom(c.Request.Context(), global.Queries, id)
|
||||
if err != nil {
|
||||
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")
|
||||
return nil
|
||||
}
|
||||
response.Ok(c, "Đã xóa thành công", nil)
|
||||
response.Ok(c, "Delete Success", nil)
|
||||
return nil
|
||||
}
|
||||
|
||||
@@ -13,6 +13,7 @@ import (
|
||||
"wm-backend/response"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/rs/zerolog/log"
|
||||
)
|
||||
|
||||
// WareHouseCreate creates a new warehouse.
|
||||
@@ -161,11 +162,16 @@ func WareHouseDelete(c *gin.Context) error {
|
||||
response.BadRequestError(c, http.StatusBadRequest, "Invalid ID")
|
||||
return nil
|
||||
}
|
||||
err = repositories.DeleteWarehouse(c.Request.Context(), global.Queries, id)
|
||||
rowsAffected, err := repositories.DeleteWarehouse(c.Request.Context(), global.Queries, id)
|
||||
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")
|
||||
return nil
|
||||
}
|
||||
response.Ok(c, "Đã xóa thành công", nil)
|
||||
response.Ok(c, "Delete Success", nil)
|
||||
return nil
|
||||
}
|
||||
|
||||
@@ -49,14 +49,17 @@ func (q *Queries) CreateCabinet(ctx context.Context, arg CreateCabinetParams) (C
|
||||
return i, err
|
||||
}
|
||||
|
||||
const deleteCabinet = `-- name: DeleteCabinet :exec
|
||||
const deleteCabinet = `-- name: DeleteCabinet :execrows
|
||||
DELETE FROM cabinets
|
||||
WHERE id = $1
|
||||
`
|
||||
|
||||
func (q *Queries) DeleteCabinet(ctx context.Context, id int64) error {
|
||||
_, err := q.db.Exec(ctx, deleteCabinet, id)
|
||||
return err
|
||||
func (q *Queries) DeleteCabinet(ctx context.Context, id int64) (int64, error) {
|
||||
result, err := q.db.Exec(ctx, deleteCabinet, id)
|
||||
if err != nil {
|
||||
return 0, err
|
||||
}
|
||||
return result.RowsAffected(), nil
|
||||
}
|
||||
|
||||
const getCabinetByID = `-- name: GetCabinetByID :one
|
||||
|
||||
@@ -18,10 +18,10 @@ type Querier interface {
|
||||
CreateRoom(ctx context.Context, arg CreateRoomParams) (Room, error)
|
||||
CreateUser(ctx context.Context, arg CreateUserParams) (uuid.UUID, error)
|
||||
CreateWarehouse(ctx context.Context, arg CreateWarehouseParams) (Warehouse, error)
|
||||
DeleteCabinet(ctx context.Context, id int64) error
|
||||
DeleteRole(ctx context.Context, id uuid.UUID) error
|
||||
DeleteRoom(ctx context.Context, id int64) error
|
||||
DeleteWarehouse(ctx context.Context, id int64) error
|
||||
DeleteCabinet(ctx context.Context, id int64) (int64, error)
|
||||
DeleteRole(ctx context.Context, id uuid.UUID) (int64, error)
|
||||
DeleteRoom(ctx context.Context, id int64) (int64, error)
|
||||
DeleteWarehouse(ctx context.Context, id int64) (int64, error)
|
||||
GetCabinetByID(ctx context.Context, id int64) (Cabinet, error)
|
||||
GetRoleByID(ctx context.Context, id uuid.UUID) (Role, 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
|
||||
}
|
||||
|
||||
const deleteRole = `-- name: DeleteRole :exec
|
||||
const deleteRole = `-- name: DeleteRole :execrows
|
||||
DELETE FROM roles
|
||||
WHERE id = $1
|
||||
`
|
||||
|
||||
func (q *Queries) DeleteRole(ctx context.Context, id uuid.UUID) error {
|
||||
_, err := q.db.Exec(ctx, deleteRole, id)
|
||||
return err
|
||||
func (q *Queries) DeleteRole(ctx context.Context, id uuid.UUID) (int64, error) {
|
||||
result, err := q.db.Exec(ctx, deleteRole, id)
|
||||
if err != nil {
|
||||
return 0, err
|
||||
}
|
||||
return result.RowsAffected(), nil
|
||||
}
|
||||
|
||||
const getRoleByID = `-- name: GetRoleByID :one
|
||||
|
||||
@@ -49,14 +49,17 @@ func (q *Queries) CreateRoom(ctx context.Context, arg CreateRoomParams) (Room, e
|
||||
return i, err
|
||||
}
|
||||
|
||||
const deleteRoom = `-- name: DeleteRoom :exec
|
||||
const deleteRoom = `-- name: DeleteRoom :execrows
|
||||
DELETE FROM rooms
|
||||
WHERE id = $1
|
||||
`
|
||||
|
||||
func (q *Queries) DeleteRoom(ctx context.Context, id int64) error {
|
||||
_, err := q.db.Exec(ctx, deleteRoom, id)
|
||||
return err
|
||||
func (q *Queries) DeleteRoom(ctx context.Context, id int64) (int64, error) {
|
||||
result, err := q.db.Exec(ctx, deleteRoom, id)
|
||||
if err != nil {
|
||||
return 0, err
|
||||
}
|
||||
return result.RowsAffected(), nil
|
||||
}
|
||||
|
||||
const getRoomByID = `-- name: GetRoomByID :one
|
||||
|
||||
@@ -49,14 +49,17 @@ func (q *Queries) CreateWarehouse(ctx context.Context, arg CreateWarehouseParams
|
||||
return i, err
|
||||
}
|
||||
|
||||
const deleteWarehouse = `-- name: DeleteWarehouse :exec
|
||||
const deleteWarehouse = `-- name: DeleteWarehouse :execrows
|
||||
DELETE FROM warehouses
|
||||
WHERE id = $1
|
||||
`
|
||||
|
||||
func (q *Queries) DeleteWarehouse(ctx context.Context, id int64) error {
|
||||
_, err := q.db.Exec(ctx, deleteWarehouse, id)
|
||||
return err
|
||||
func (q *Queries) DeleteWarehouse(ctx context.Context, id int64) (int64, error) {
|
||||
result, err := q.db.Exec(ctx, deleteWarehouse, id)
|
||||
if err != nil {
|
||||
return 0, err
|
||||
}
|
||||
return result.RowsAffected(), nil
|
||||
}
|
||||
|
||||
const getWarehouseByID = `-- name: GetWarehouseByID :one
|
||||
|
||||
Reference in New Issue
Block a user