7. js / bd / pasatiempoModifica.js

1import { bdEjecuta } from "../../lib/js/bdEjecuta.js"
2import { exportaAHtml } from "../../lib/js/exportaAHtml.js"
3import { validaId } from "../modelo/validaId.js"
4import { validaNombre } from "../modelo/validaNombre.js"
5import { ALMACEN_PASATIEMPO, Bd } from "./Bd.js"
6import { pasatiempoBusca } from "./pasatiempoBusca.js"
7
8/**
9 * @param { import("../modelo/PASATIEMPO.js").PASATIEMPO } modelo
10 */
11export async function pasatiempoModifica(modelo) {
12 validaNombre(modelo.PAS_NOMBRE)
13 if (modelo.PAS_ID === undefined)
14 throw new Error(`Falta PAS_ID de ${modelo.PAS_NOMBRE}.`)
15 validaId(modelo.PAS_ID)
16 const anterior = await pasatiempoBusca(modelo.PAS_ID)
17 if (anterior !== undefined) {
18 modelo.PAS_MODIFICACION = Date.now()
19 modelo.PAS_ELIMINADO = 0
20 return bdEjecuta(Bd, [ALMACEN_PASATIEMPO], transaccion => {
21 const almacenPasatiempo = transaccion.objectStore(ALMACEN_PASATIEMPO)
22 almacenPasatiempo.put(modelo)
23 })
24 }
25}
26
27exportaAHtml(pasatiempoModifica)
skip_previous skip_next