fix(page): move pages back when one is deleted inbetween.
This commit is contained in:
@@ -27,6 +27,7 @@ const GETSPECIFICSVGPAGESSQL string = "SELECT * FROM svgpage WHERE id = ?;"
|
||||
const DELETESVGPAGESQL string = "DELETE FROM svgpage WHERE id = ? AND page = ?;"
|
||||
const DELETEALLSVGPAGESQL string = "DELETE FROM svgpage WHERE id = ?;"
|
||||
const COUNTSVGPAGESQL string = "SELECT COUNT(*) FROM svgpage WHERE id = ?;"
|
||||
const UPDATEPAGESQL string = "UPDATE svgpage SET page = page - 1 WHERE page > ?;"
|
||||
|
||||
func InsertSVGPage(data *svg.TemplatePage) (int, error) {
|
||||
json, err := json.Marshal(data.TemplateKeys)
|
||||
@@ -86,6 +87,11 @@ func DeleteSVGPage(id string, page int) (bool, error) {
|
||||
if num == 0 {
|
||||
return false, nil
|
||||
}
|
||||
|
||||
if err := movePages(id, page); err != nil {
|
||||
return false, err
|
||||
}
|
||||
|
||||
return true, nil
|
||||
}
|
||||
|
||||
@@ -116,3 +122,8 @@ func GetPageCount(id string) (int, error) {
|
||||
|
||||
return count, nil
|
||||
}
|
||||
|
||||
func movePages(id string, deletedPage int) error {
|
||||
_, err := database.Exec(UPDATEPAGESQL, deletedPage)
|
||||
return err
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user