]> saetta.ns0.it Git - zakegg_go/commitdiff
Allegati: se inserimento ok allora elimino altri record riferiti alla stessa tabella...
authorAndrea Zagli <azagli@libero.it>
Thu, 1 Sep 2022 12:27:12 +0000 (14:27 +0200)
committerAndrea Zagli <azagli@libero.it>
Thu, 1 Sep 2022 12:27:12 +0000 (14:27 +0200)
allegati.go

index 19cc5ab976967a5d823e51389f36349d168d9d2d..5d89dd96d48dcb66f6974a9092e15919d0613b35 100644 (file)
@@ -25,7 +25,7 @@ func AllegatoSalva(allegati_dir string, file multipart.File, file_header *multip
                /* la creo */
                err = os.MkdirAll(allegati_dir, 0755)
                if err != nil {
-                       fmt.Println("Impossibile creare la directory «%s» per gli allegati.", allegati_dir)
+                       fmt.Println("Impossibile creare la directory '%s' per gli allegati.", allegati_dir)
                return 0, 0
                }
        }
@@ -109,5 +109,22 @@ func AllegatoSalva(allegati_dir string, file multipart.File, file_header *multip
        rows.Scan(&new_id, &new_id_gruppi)
        rows.Close()
 
+       /* se andata a buon fine, elimino altri record riferiti allo stesso campo */
+       if new_id != 0 {
+               sql = fmt.Sprintf(`UPDATE %s
+                       SET status = 'E'
+            WHERE id <> %d
+            AND %s = %d
+            AND tabella_nome = %s
+            AND campo_nome = %s`,
+                       tabella_allegati,
+                       new_id,
+                       campo_id_tabella,
+                       id_tabella,
+                       sqlstring.Escape(tabella),
+                       sqlstring.Escape(campo_tabella))
+               db.Exec(sql)
+       }
+
        return new_id, new_id_gruppi
 }