diff --git a/src/components/pageBag/pbo-material.vue b/src/components/pageBag/pbo-material.vue index 4e58ead5..4efcea3d 100644 --- a/src/components/pageBag/pbo-material.vue +++ b/src/components/pageBag/pbo-material.vue @@ -34,9 +34,10 @@
- mdi-clock-edit-outline + mdi-clock-edit-outline 更新记录 手动更新 + 删除记录
@@ -59,6 +60,7 @@ import showSnackbar from "@comp/func/snackbar.js"; import TwoSource from "@comp/pageWiki/two-source.vue"; import TSUserBagMaterial, { SKIP_BAG_TYPES } from "@Sqlm/userBagMaterial.js"; import { getVersion } from "@tauri-apps/api/app"; +import TGLogger from "@utils/TGLogger.js"; import { generateShareImg } from "@utils/TGShare.js"; import { parseHtmlText, timestampToDate } from "@utils/toolFunc.js"; import { computed, onMounted, ref, shallowRef, watch } from "vue"; @@ -127,6 +129,29 @@ async function tryEdit(): Promise { emits("updateDB", { info: props.data.info, tb: dbInfo.value }); showSnackbar.success("成功更新记录"); } + +async function tryDelete(): Promise { + if (dbInfo.value.records.length === 0) { + showSnackbar.warn("没有可以删除的记录"); + return; + } + if (dbInfo.value.records.length === 1) { + showSnackbar.warn("最少保留一条记录"); + return; + } + const check = await showDialog.check("确定删除?", "删除后仅保留一条记录"); + if (!check) { + showSnackbar.cancel("取消删除记录"); + return; + } + await TGLogger.Info( + `[pboMaterial][${dbInfo.value.uid}][${dbInfo.value.id}] 删除 ${props.data.info.name} 记录`, + ); + await TSUserBagMaterial.deleteRecord(props.uid, dbInfo.value.id, dbInfo.value.count); + await refreshDb(); + emits("updateDB", { info: props.data.info, tb: dbInfo.value }); + showSnackbar.success("成功删除记录"); +}