添加消息类型枚举和相关字段,优化消息记录服务的添加方法,更新多个组件以支持新增分类对话框
All checks were successful
Docker Build & Deploy / Build Docker Image (push) Successful in 38s
Docker Build & Deploy / Deploy to Production (push) Successful in 6s
Docker Build & Deploy / Cleanup Dangling Images (push) Successful in 1s

This commit is contained in:
孙诚
2026-01-06 13:45:39 +08:00
parent baa77341bc
commit 10b02df6e2
10 changed files with 178 additions and 149 deletions

View File

@@ -9,8 +9,7 @@
<van-button size="small" type="primary" plain @click="handleOffsetClick">抵账</van-button>
</template>
<div v-if="transaction">
<van-form @submit="onSubmit" style="margin-top: 12px;">
<van-form style="margin-top: 12px;">
<van-cell-group inset>
<van-cell title="交易时间" :value="formatDate(transaction.occurredAt)" />
<van-cell title="记录时间" :value="formatDate(transaction.createTime)" />
@@ -68,7 +67,7 @@
type="success"
size="small"
class="classify-btn"
@click="showAddClassify = true"
@click="addClassifyDialogRef.open()"
>
+ 新增
</van-button>
@@ -93,25 +92,26 @@
</van-button>
</div>
</van-cell-group>
</van-form>
<div style="margin: 16px;">
<van-button round block type="primary" native-type="submit" :loading="submitting">
保存修改
</van-button>
</div>
</van-form>
</div>
<template #footer>
<van-button
round
block
type="primary"
:loading="submitting"
@click="onSubmit"
>
保存修改
</van-button>
</template>
</PopupContainer>
<!-- 新增分类对话框 -->
<van-dialog
v-model:show="showAddClassify"
title="新增交易分类"
show-cancel-button
@confirm="addNewClassify"
>
<van-field v-model="newClassify" placeholder="请输入新的交易分类" />
</van-dialog>
<AddClassifyDialog
ref="addClassifyDialogRef"
@confirm="handleAddClassify"
/>
<!-- 抵账候选列表弹窗 -->
<PopupContainer
@@ -138,6 +138,7 @@
import { ref, reactive, watch, defineProps, defineEmits } from 'vue'
import { showToast, showConfirmDialog } from 'vant'
import PopupContainer from '@/components/PopupContainer.vue'
import AddClassifyDialog from '@/components/AddClassifyDialog.vue'
import { updateTransaction, getCandidatesForOffset, offsetTransactions } from '@/api/transactionRecord'
import { getCategoryList, createCategory } from '@/api/transactionCategory'
@@ -156,11 +157,10 @@ const emit = defineEmits(['update:show', 'save'])
const visible = ref(false)
const submitting = ref(false)
const addClassifyDialogRef = ref()
// 分类相关
const classifyColumns = ref([])
const showAddClassify = ref(false)
const newClassify = ref('')
// 编辑表单
const editForm = reactive({
@@ -264,15 +264,8 @@ const selectClassify = (classify) => {
}
// 新增分类
const addNewClassify = async () => {
if (!newClassify.value.trim()) {
showToast('请输入分类名称')
return
}
const handleAddClassify = async (categoryName) => {
try {
const categoryName = newClassify.value.trim()
// 调用API创建分类
const response = await createCategory({
name: categoryName,
@@ -290,9 +283,6 @@ const addNewClassify = async () => {
} catch (error) {
console.error('创建分类出错:', error)
showToast('创建分类失败')
} finally {
newClassify.value = ''
showAddClassify.value = false
}
}