diff --git a/Web/src/views/CalendarView.vue b/Web/src/views/CalendarView.vue
index b52caa7..08e3d2b 100644
--- a/Web/src/views/CalendarView.vue
+++ b/Web/src/views/CalendarView.vue
@@ -195,21 +195,21 @@ const viewDetail = async (transaction) => {
// 详情保存后的回调
const onDetailSave = async (saveData) => {
- // 重新加载当前日期的交易列表
- if (saveData && dateTransactions.value) {
- var updatedIndex = dateTransactions.value.findIndex(tx => tx.id === saveData.id);
- if (updatedIndex !== -1) {
- // 更新已有记录
- dateTransactions.value[updatedIndex].amount = saveData.amount;
- dateTransactions.value[updatedIndex].balance = saveData.balance;
- dateTransactions.value[updatedIndex].type = saveData.type;
- dateTransactions.value[updatedIndex].upsetedType = '';
- dateTransactions.value[updatedIndex].classify = saveData.classify;
- dateTransactions.value[updatedIndex].upsetedClassify = '';
- dateTransactions.value[updatedIndex].reason = saveData.reason;
- }
+ var item = dateTransactions.value.find(tx => tx.id === saveData.id);
+ if(!item) return
+
+ // 如果分类发生了变化 移除智能分类的内容,防止被智能分类覆盖
+ if(item.classify !== saveData.classify) {
+ // 通知智能分类按钮组件移除指定项
+ smartClassifyButtonRef.value?.removeClassifiedTransaction(saveData.id)
+ item.upsetedClassify = ''
}
+ // 更新当前日期交易列表中的数据
+ Object.assign(item, saveData);
+
+
+
// 重新加载当前月份的统计数据
const now = selectedDate.value || new Date();
fetchDailyStatistics(now.getFullYear(), now.getMonth() + 1);
diff --git a/Web/src/views/MessageView.vue b/Web/src/views/MessageView.vue
index 7902382..54e04c1 100644
--- a/Web/src/views/MessageView.vue
+++ b/Web/src/views/MessageView.vue
@@ -53,18 +53,25 @@
{{ currentMessage.content }}
+