fixbug: 🐛 导入账单无法下载模板;查询账单添加多个类别查询

This commit is contained in:
Bunny 2024-12-27 15:57:22 +08:00
parent 00789d423d
commit 3bfff5a884
9 changed files with 47 additions and 32 deletions

View File

@ -5,6 +5,7 @@ import type { BaseResult, ResultTable } from '@/api/service/types';
export const fetchGetUserBillList = (data: any) => {
data = {
amount: data.amount,
categoryIds: data.categoryIds,
type: data.type,
description: data.description,
startDate: data.startDate,

View File

@ -29,6 +29,8 @@ export const useBillUserStore = defineStore('billUserStore', {
form: {
// 类型1 - 收入,-1 - 支出
type: undefined,
// 类别id
categoryIds: undefined,
// 金额
amount: undefined,
// 描述

View File

@ -7,15 +7,15 @@ export const columns: TableColumnList = [
{ type: 'selection', align: 'left' },
{ type: 'index', index: (index: number) => index + 1, label: '序号', width: 60 },
// 模板名称
{ label: $t('emailTemplate_templateName'), prop: 'templateName' },
{ label: $t('emailTemplate_templateName'), prop: 'templateName', minWidth: 150 },
// 模板名称
{ label: $t('emailTemplate_emailUser'), prop: 'emailUser', slot: 'emailUser' },
{ label: $t('emailTemplate_emailUser'), prop: 'emailUser', slot: 'emailUser', minWidth: 200 },
// 主题
{ label: $t('emailTemplate_subject'), prop: 'subject' },
{ label: $t('emailTemplate_subject'), prop: 'subject', minWidth: 150 },
// 邮件内容
{ label: $t('emailTemplate_body'), prop: 'body' },
// 邮件类型
{ label: $t('emailTemplate_type'), prop: 'summary' },
{ label: $t('emailTemplate_type'), prop: 'summary', minWidth: 150 },
// 是否默认
{
label: $t('isDefault'),
@ -29,6 +29,7 @@ export const columns: TableColumnList = [
</ElTag>
);
},
minWidth: 100,
},
{ label: $t('table.updateTime'), prop: 'updateTime', sortable: true, width: 160 },
{ label: $t('table.createTime'), prop: 'createTime', sortable: true, width: 160 },

View File

@ -6,11 +6,11 @@ export const columns: TableColumnList = [
{ type: 'selection', align: 'left' },
{ type: 'index', index: (index: number) => index + 1, label: '序号', width: 60 },
// 邮箱
{ label: $t('emailUsers_email'), prop: 'email' },
{ label: $t('emailUsers_email'), prop: 'email', minWidth: 150 },
// 密码
{ label: $t('emailUsers_password'), prop: 'password' },
{ label: $t('emailUsers_password'), prop: 'password', minWidth: 150 },
// Host地址
{ label: $t('emailUsers_host'), prop: 'host' },
{ label: $t('emailUsers_host'), prop: 'host', minWidth: 100 },
// 端口号
{ label: $t('emailUsers_port'), prop: 'port', width: 90 },
// 邮箱协议

View File

@ -16,10 +16,13 @@ import { FormInstance } from 'element-plus';
import { incomeOrExpend } from '@/enums/baseConstant';
import { getCurrentMouthDate } from '@/utils/date';
import { currentMouth, currentWeek, currentYear, shortcutsAllMouth } from '@/enums/dateEnums';
import { useCategoryUserStore } from '@/store/financialUser/categoryUser';
const tableRef = ref();
const formRef = ref();
const billStore = useBillUserStore();
const categoryUserStore = useCategoryUserStore();
//
const shortcuts = [
{ text: $t('thisWeek'), value: currentWeek },
@ -57,6 +60,7 @@ const resetForm = async (formEl: FormInstance | undefined) => {
onMounted(() => {
onSearch();
categoryUserStore.getCategoryUserAllList();
});
</script>
@ -70,6 +74,13 @@ onMounted(() => {
</el-select>
</el-form-item>
<!-- 类别id -->
<el-form-item :label="$t('category')" prop="categoryId">
<el-select v-model="billStore.form.categoryIds" :placeholder="$t('select') + $t('category')" class="!w-[180px]" clearable filterable multiple>
<el-option v-for="item in categoryUserStore.allCategoryList" :key="item.id" :label="item.categoryName" :navigationBar="false" :value="item.id" />
</el-select>
</el-form-item>
<!-- 金额 -->
<el-form-item :label="$t('amount')" prop="amount">
<el-input v-model="billStore.form.amount" :min="0" :placeholder="$t('input') + $t('amount')" :step="0.01" autocomplete="off" type="number" />

View File

@ -8,15 +8,15 @@ export const columns: TableColumnList = [
// 消息标题
{ label: $t('title'), prop: 'title' },
// 消息简介
{ label: $t('summary'), prop: 'summary' },
{ label: $t('summary'), prop: 'summary', minWidth: 150 },
// 发送人昵称
{ label: $t('sendNickname'), prop: 'sendNickname', slot: 'sendNickname' },
{ label: $t('sendNickname'), prop: 'sendNickname', minWidth: 150, slot: 'sendNickname' },
// 接受人昵称
{ label: $t('receivedUserNickname'), prop: 'receivedUserNickname', slot: 'receivedUserNickname' },
{ label: $t('receivedUserNickname'), prop: 'receivedUserNickname', minWidth: 150, slot: 'receivedUserNickname' },
// 消息类型
{ label: $t('messageType'), prop: 'messageType', slot: 'messageType' },
{ label: $t('messageType'), prop: 'messageType', minWidth: 120, slot: 'messageType' },
// 编辑器类型
{ label: $t('editorType'), prop: 'editorType' },
{ label: $t('editorType'), prop: 'editorType', minWidth: 150 },
// 封面
{ label: $t('cover'), prop: 'cover', slot: 'cover', width: 80 },
// 消息等级

View File

@ -7,17 +7,17 @@ export const columns: TableColumnList = [
{ type: 'selection', align: 'left' },
{ type: 'index', index: (index: number) => index + 1, label: '序号', width: 60 },
// 消息标题
{ label: $t('title'), prop: 'title' },
{ label: $t('title'), prop: 'title', minWidth: 150 },
// 消息简介
{ label: $t('summary'), prop: 'summary' },
{ label: $t('summary'), prop: 'summary', minWidth: 200 },
// 发送人昵称
{ label: $t('sendNickname'), prop: 'sendNickname', slot: 'sendNickname' },
{ label: $t('sendNickname'), prop: 'sendNickname', slot: 'sendNickname', minWidth: 150 },
// 接受人昵称
{ label: $t('receivedUserNickname'), prop: 'receivedUserNickname' },
{ label: $t('receivedUserNickname'), prop: 'receivedUserNickname', minWidth: 150 },
// 消息类型
{ label: $t('messageType'), prop: 'messageType', slot: 'messageType' },
{ label: $t('messageType'), prop: 'messageType', slot: 'messageType', minWidth: 150 },
// 编辑器类型
{ label: $t('editorType'), prop: 'editorType' },
{ label: $t('editorType'), prop: 'editorType', minWidth: 120 },
// 封面
{ label: $t('cover'), prop: 'cover', slot: 'cover', width: 80 },
// 消息等级
@ -34,7 +34,7 @@ export const columns: TableColumnList = [
width: 100,
},
// 消息等级详情
{ label: $t('extra'), prop: 'extra', slot: 'extra' },
{ label: $t('extra'), prop: 'extra', slot: 'extra', minWidth: 150 },
{ label: $t('table.updateTime'), prop: 'updateTime', sortable: true, width: 160 },
{ label: $t('table.createTime'), prop: 'createTime', sortable: true, width: 160 },
{ label: $t('table.createUser'), prop: 'createUser', slot: 'createUser', width: 130 },

View File

@ -6,17 +6,17 @@ export const columns: TableColumnList = [
{ type: 'selection', align: 'left' },
{ type: 'index', index: (index: number) => index + 1, label: '序号', width: 60 },
// 任务名称
{ label: $t('quartzExecuteLog_jobName'), prop: 'jobName' },
{ label: $t('quartzExecuteLog_jobName'), prop: 'jobName', minWidth: 150 },
// 任务分组
{ label: $t('quartzExecuteLog_jobGroup'), prop: 'jobGroup' },
{ label: $t('quartzExecuteLog_jobGroup'), prop: 'jobGroup', minWidth: 120 },
// 执行任务类名
{ label: $t('quartzExecuteLog_jobClassName'), prop: 'jobClassName' },
{ label: $t('quartzExecuteLog_jobClassName'), prop: 'jobClassName', minWidth: 150 },
// 执行任务core表达式
{ label: $t('quartzExecuteLog_cronExpression'), prop: 'cronExpression' },
{ label: $t('quartzExecuteLog_cronExpression'), prop: 'cronExpression', minWidth: 100 },
// 触发器名称
{ label: $t('quartzExecuteLog_triggerName'), prop: 'triggerName' },
{ label: $t('quartzExecuteLog_triggerName'), prop: 'triggerName', minWidth: 150 },
// 执行结果
{ label: $t('quartzExecuteLog_executeResult'), prop: 'executeResult', width: 410, slot: 'executeResult' },
{ label: $t('quartzExecuteLog_executeResult'), prop: 'executeResult', minWidth: 410, slot: 'executeResult' },
// 执行时间
{ label: $t('quartzExecuteLog_duration'), prop: 'duration' },
{ label: $t('table.updateTime'), prop: 'updateTime', sortable: true, width: 160 },

View File

@ -4,19 +4,19 @@ import { $t } from '@/plugins/i18n';
// 表格列
export const columns: TableColumnList = [
{ type: 'selection', align: 'left' },
{ type: 'index', index: (index: number) => index + 1, label: '序号', width: 60 },
{ type: 'index', index: (index: number) => index + 1, label: '序号', minWidth: 60 },
// 用户名
{ label: $t('userLoginLog_username'), prop: 'username', width: 180 },
{ label: $t('userLoginLog_username'), prop: 'username', minWidth: 180 },
// 登录Ip
{ label: $t('userLoginLog_ipAddress'), prop: 'ipAddress', width: 130 },
{ label: $t('userLoginLog_ipAddress'), prop: 'ipAddress', minWidth: 130 },
// 登录Ip归属地
{ label: $t('userLoginLog_ipRegion'), prop: 'ipRegion', width: 160 },
{ label: $t('userLoginLog_ipRegion'), prop: 'ipRegion', minWidth: 160 },
// 登录时代理
{ label: $t('userLoginLog_userAgent'), prop: 'userAgent' },
{ label: $t('userLoginLog_userAgent'), prop: 'userAgent', minWidth: 200 },
// 操作类型
{ label: $t('userLoginLog_type'), prop: 'type', width: 130 },
{ label: $t('userLoginLog_type'), prop: 'type', minWidth: 130 },
// 标识客户端是否是通过Ajax发送请求的
{ label: $t('userLoginLog_xRequestedWith'), prop: 'xRequestedWith', width: 150 },
{ label: $t('userLoginLog_xRequestedWith'), prop: 'xRequestedWith', minWidth: 150 },
// 登录token
{ label: $t('userLoginLog_token'), prop: 'token', width: 200 },
{ label: $t('table.updateTime'), prop: 'updateTime', sortable: true, width: 160 },