From a737b267a8d2d68953c14b83077cad2b0e7a5ecf Mon Sep 17 00:00:00 2001 From: dhb52 Date: Sat, 22 Apr 2023 23:43:35 +0800 Subject: [PATCH] =?UTF-8?q?refactor:=20mp=E6=A8=A1=E5=9D=97=E7=BB=9F?= =?UTF-8?q?=E4=B8=80accountId=E6=9C=AA=E5=88=9D=E5=A7=8B=E5=8C=96=E5=80=BC?= =?UTF-8?q?=E4=B8=BA-1=EF=BC=8C=E5=88=A0=E9=99=A4QueryParams=E5=AE=9A?= =?UTF-8?q?=E4=B9=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit (cherry picked from commit 198752868ca8c3f84f250783b95d60fa3de9919c) --- src/api/mp/account/index.ts | 2 +- src/views/mp/autoReply/index.vue | 15 ++++------ .../mp/components/wx-account-select/main.vue | 7 +++-- src/views/mp/draft/index.vue | 29 ++++++------------- src/views/mp/freePublish/index.vue | 10 ++----- src/views/mp/material/index.vue | 11 ++----- src/views/mp/menu/index.vue | 2 +- src/views/mp/message/index.vue | 17 ++++------- src/views/mp/statistics/index.vue | 4 +-- src/views/mp/tag/index.vue | 11 ++----- src/views/mp/user/index.vue | 17 ++++------- 11 files changed, 42 insertions(+), 83 deletions(-) diff --git a/src/api/mp/account/index.ts b/src/api/mp/account/index.ts index d641ef3c..e973cda3 100644 --- a/src/api/mp/account/index.ts +++ b/src/api/mp/account/index.ts @@ -1,7 +1,7 @@ import request from '@/config/axios' export interface AccountVO { - id?: number + id: number name: string } diff --git a/src/views/mp/autoReply/index.vue b/src/views/mp/autoReply/index.vue index 20a1e683..e2fcd7a0 100644 --- a/src/views/mp/autoReply/index.vue +++ b/src/views/mp/autoReply/index.vue @@ -103,6 +103,7 @@ import ReplyTable from './components/ReplyTable.vue' import { MsgType } from './components/types' const message = useMessage() // 消息 +const accountId = ref(-1) // 公众号ID const msgType = ref(MsgType.Keyword) // 消息类型 const RequestMessageTypes = ['text', 'image', 'voice', 'video', 'shortvideo', 'location', 'link'] // 允许选择的请求消息类型 const loading = ref(true) // 遮罩层 @@ -110,15 +111,10 @@ const total = ref(0) // 总条数 const list = ref([]) // 自动回复列表 const formRef = ref(null) // 表单 ref // 查询参数 -interface QueryParams { - pageNo: number - pageSize: number - accountId: number -} -const queryParams: QueryParams = reactive({ +const queryParams = reactive({ pageNo: 1, pageSize: 10, - accountId: 0 + accountId: accountId }) const dialogTitle = ref('') // 弹出层标题 @@ -127,7 +123,7 @@ const replyForm = ref({}) // 表单参数 // 回复消息 const reply = ref({ type: ReplyType.Text, - accountId: 0 + accountId: -1 }) // 表单校验 const rules = { @@ -137,8 +133,9 @@ const rules = { /** 侦听账号变化 */ const onAccountChanged = (id: number) => { - queryParams.accountId = id + accountId.value = id reply.value.accountId = id + queryParams.pageNo = 1 getList() } diff --git a/src/views/mp/components/wx-account-select/main.vue b/src/views/mp/components/wx-account-select/main.vue index 8dbad499..e2501657 100644 --- a/src/views/mp/components/wx-account-select/main.vue +++ b/src/views/mp/components/wx-account-select/main.vue @@ -8,13 +8,14 @@ import * as MpAccountApi from '@/api/mp/account' const account: MpAccountApi.AccountVO = reactive({ - id: undefined, + id: -1, name: '' }) -const accountList: Ref = ref([]) + +const accountList = ref([]) const emit = defineEmits<{ - (e: 'change', id: number, name: string): void + (e: 'change', id: number, name: string) }>() const handleQuery = async () => { diff --git a/src/views/mp/draft/index.vue b/src/views/mp/draft/index.vue index 6b40bc35..a916ed39 100644 --- a/src/views/mp/draft/index.vue +++ b/src/views/mp/draft/index.vue @@ -76,18 +76,14 @@ import { const message = useMessage() // 消息 -const accountId = ref(-1) +const accountId = ref(-1) provide('accountId', accountId) const loading = ref(true) // 列表的加载中 const list = ref([]) // 列表的数据 const total = ref(0) // 列表的总页数 -interface QueryParams { - pageNo: number - pageSize: number - accountId: number -} -const queryParams: QueryParams = reactive({ + +const queryParams = reactive({ pageNo: 1, pageSize: 10, accountId: accountId @@ -102,7 +98,8 @@ const isSubmitting = ref(false) /** 侦听公众号变化 **/ const onAccountChanged = (id: number) => { - setAccountId(id) + accountId.value = id + queryParams.pageNo = 1 getList() } @@ -115,12 +112,6 @@ const onBeforeDialogClose = async (onDone: () => {}) => { } // ======================== 列表查询 ======================== -/** 设置账号编号 */ -const setAccountId = (id: number) => { - accountId.value = id - // queryParams.accountId = id -} - /** 查询列表 */ const getList = async () => { loading.value = true @@ -161,10 +152,10 @@ const onSubmitNewsItem = async () => { isSubmitting.value = true try { if (isCreating.value) { - await MpDraftApi.createDraft(queryParams.accountId, newsList.value) + await MpDraftApi.createDraft(accountId.value, newsList.value) message.notifySuccess('新增成功') } else { - await MpDraftApi.updateDraft(queryParams.accountId, mediaId.value, newsList.value) + await MpDraftApi.updateDraft(accountId.value, mediaId.value, newsList.value) message.notifySuccess('更新成功') } } finally { @@ -176,7 +167,6 @@ const onSubmitNewsItem = async () => { // ======================== 草稿箱发布 ======================== const onPublish = async (item: Article) => { - const accountId = queryParams.accountId const mediaId = item.mediaId const content = '你正在通过发布的方式发表内容。 发布不占用群发次数,一天可多次发布。' + @@ -184,7 +174,7 @@ const onPublish = async (item: Article) => { '发布后,你可以前往发表记录获取链接,也可以将发布内容添加到自定义菜单、自动回复、话题和页面模板中。' try { await message.confirm(content) - await MpFreePublishApi.submitFreePublish(accountId, mediaId) + await MpFreePublishApi.submitFreePublish(accountId.value, mediaId) message.notifySuccess('发布成功') await getList() } catch {} @@ -192,11 +182,10 @@ const onPublish = async (item: Article) => { /** 删除按钮操作 */ const onDelete = async (item: Article) => { - const accountId = queryParams.accountId const mediaId = item.mediaId try { await message.confirm('此操作将永久删除该草稿, 是否继续?') - await MpDraftApi.deleteDraft(accountId, mediaId) + await MpDraftApi.deleteDraft(accountId.value, mediaId) message.notifySuccess('删除成功') await getList() } catch {} diff --git a/src/views/mp/freePublish/index.vue b/src/views/mp/freePublish/index.vue index 08a202c2..62ca1999 100644 --- a/src/views/mp/freePublish/index.vue +++ b/src/views/mp/freePublish/index.vue @@ -59,20 +59,16 @@ const loading = ref(true) // 列表的加载中 const total = ref(0) // 列表的总页数 const list = ref([]) // 列表的数据 -interface QueryParams { - pageNo: number - pageSize: number - accountId: number -} -const queryParams: QueryParams = reactive({ +const queryParams = reactive({ pageNo: 1, pageSize: 10, - accountId: 0 + accountId: -1 }) /** 侦听公众号变化 **/ const onAccountChanged = (id: number) => { queryParams.accountId = id + queryParams.pageNo = 1 getList() } diff --git a/src/views/mp/material/index.vue b/src/views/mp/material/index.vue index 54e657b9..1f755968 100644 --- a/src/views/mp/material/index.vue +++ b/src/views/mp/material/index.vue @@ -99,16 +99,10 @@ const loading = ref(false) // 遮罩层 const list = ref([]) // 总条数 const total = ref(0) // 数据列表 // 查询参数 -interface QueryParams { - pageNo: number - pageSize: number - accountId: number - permanent: boolean -} -const queryParams: QueryParams = reactive({ +const queryParams = reactive({ pageNo: 1, pageSize: 10, - accountId: 0, + accountId: -1, permanent: true }) const showCreateVideo = ref(false) // 是否新建视频的弹窗 @@ -116,6 +110,7 @@ const showCreateVideo = ref(false) // 是否新建视频的弹窗 /** 侦听公众号变化 **/ const onAccountChanged = (id: number) => { queryParams.accountId = id + queryParams.pageNo = 1 getList() } diff --git a/src/views/mp/menu/index.vue b/src/views/mp/menu/index.vue index cbec87dc..0b02cc16 100644 --- a/src/views/mp/menu/index.vue +++ b/src/views/mp/menu/index.vue @@ -65,7 +65,7 @@ const MENU_NOT_SELECTED = '__MENU_NOT_SELECTED__' // ======================== 列表查询 ======================== const loading = ref(false) // 遮罩层 -const accountId = ref(0) +const accountId = ref(-1) const accountName = ref('') const menuList = ref([]) diff --git a/src/views/mp/message/index.vue b/src/views/mp/message/index.vue index 85048f38..db92cc0f 100644 --- a/src/views/mp/message/index.vue +++ b/src/views/mp/message/index.vue @@ -93,20 +93,12 @@ const total = ref(0) // 数据的总页数 const list = ref([]) // 当前页的列表数据 // 搜索参数 -interface QueryParams { - pageNo: number - pageSize: number - openid: string | undefined - accountId: number - type: MsgType | undefined - createTime: string[] | [] -} -const queryParams: QueryParams = reactive({ +const queryParams = reactive({ pageNo: 1, pageSize: 10, - openid: undefined, - accountId: 0, - type: undefined, + openid: '', + accountId: -1, + type: MsgType.Text, createTime: [] }) const queryFormRef = ref(null) // 搜索的表单 @@ -120,6 +112,7 @@ const messageBox = reactive({ /** 侦听accountId */ const onAccountChanged = (id: number) => { queryParams.accountId = id + queryParams.pageNo = 1 handleQuery() } diff --git a/src/views/mp/statistics/index.vue b/src/views/mp/statistics/index.vue index cef8e079..4e2dbfcc 100644 --- a/src/views/mp/statistics/index.vue +++ b/src/views/mp/statistics/index.vue @@ -84,7 +84,7 @@ const dateRange = ref([ beginOfDay(new Date(new Date().getTime() - 3600 * 1000 * 24 * 7)), endOfDay(new Date(new Date().getTime() - 3600 * 1000 * 24)) ]) -const accountId = ref() // 选中的公众号编号 +const accountId = ref(-1) // 选中的公众号编号 const accountList = ref([]) // 公众号账号列表 const xAxisDate = ref([] as any[]) // X 轴的日期范围 @@ -232,7 +232,7 @@ const getAccountList = async () => { accountList.value = await MpAccountApi.getSimpleAccountList() // 默认选中第一个 if (accountList.value.length > 0) { - accountId.value = accountList.value[0].id + accountId.value = accountList.value[0].id! } } diff --git a/src/views/mp/tag/index.vue b/src/views/mp/tag/index.vue index a92d9127..8d452a5d 100644 --- a/src/views/mp/tag/index.vue +++ b/src/views/mp/tag/index.vue @@ -95,23 +95,18 @@ const loading = ref(true) // 列表的加载中 const total = ref(0) // 列表的总页数 const list = ref([]) // 列表的数据 -interface QueryParams { - pageNo: number - pageSize: number - accountId: number -} -const queryParams: QueryParams = reactive({ +const queryParams = reactive({ pageNo: 1, pageSize: 10, - accountId: 0 + accountId: -1 }) const formRef = ref | null>(null) /** 侦听公众号变化 **/ const onAccountChanged = (id: number) => { - queryParams.pageNo = 1 queryParams.accountId = id + queryParams.pageNo = 1 getList() } diff --git a/src/views/mp/user/index.vue b/src/views/mp/user/index.vue index 03e58a7f..422e219b 100644 --- a/src/views/mp/user/index.vue +++ b/src/views/mp/user/index.vue @@ -113,27 +113,20 @@ const loading = ref(true) // 列表的加载中 const total = ref(0) // 列表的总页数 const list = ref([]) // 列表的数据 -interface QueryParams { - pageNo: number - pageSize: number - accountId: number - openid: string | null - nickname: string | null -} -const queryParams: QueryParams = reactive({ +const queryParams = reactive({ pageNo: 1, pageSize: 10, - accountId: 0, - openid: null, - nickname: null + accountId: -1, + openid: '', + nickname: '' }) const queryFormRef = ref(null) // 搜索的表单 const tagList = ref([]) // 公众号标签列表 /** 侦听公众号变化 **/ const onAccountChanged = (id: number) => { - queryParams.pageNo = 1 queryParams.accountId = id + queryParams.pageNo = 1 getList() }