From 2f1811774f15ea6f229d08a4d2616db754b3d6e9 Mon Sep 17 00:00:00 2001
From: hzhfsa <1957214281@qq.com>
Date: Thu, 19 Oct 2023 20:50:39 +0800
Subject: [PATCH 01/16] second commit
---
deliver-front/vue/src/main.ts | 2 --
1 file changed, 2 deletions(-)
diff --git a/deliver-front/vue/src/main.ts b/deliver-front/vue/src/main.ts
index 7b662cdb..9d470c42 100644
--- a/deliver-front/vue/src/main.ts
+++ b/deliver-front/vue/src/main.ts
@@ -8,8 +8,6 @@ import 'virtual:svg-icons-register';
import setupDefaultSetting from '@/utils/setupDefaultSetting'
import ElementPlus from 'element-plus'
import 'element-plus/dist/index.css'
-
-
import Antd from 'ant-design-vue';
// 用来切换主题
import 'ant-design-vue/dist/antd.variable.min.css'
--
Gitee
From 53789788fd71a03a71979f36e1c743a02f7a9737 Mon Sep 17 00:00:00 2001
From: dengyu <3233891353@qq.com>
Date: Tue, 7 Nov 2023 17:16:56 +0800
Subject: [PATCH 02/16] =?UTF-8?q?feat:=E6=8E=A7=E5=88=B6=E9=9D=A2=E6=9D=BF?=
=?UTF-8?q?=E5=A4=B4=E9=83=A8=E6=95=B0=E6=8D=AE=E6=8E=A5=E5=8F=A3=E5=AE=8C?=
=?UTF-8?q?=E6=88=90?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
deliver-front/vue/src/api/dashboard.ts | 14 +++++++-------
deliver-front/vue/src/main.ts | 3 +--
deliver-front/vue/src/store/index.ts | 11 +++--------
.../vue/src/store/modules/dashboard.ts | 18 ++++++++++++++++++
.../vue/src/store/modules/types/types.ts | 0
.../vue/src/views/Dashboard/index.vue | 14 ++++++++++++--
deliver-front/vue/vite.config.ts | 2 +-
7 files changed, 42 insertions(+), 20 deletions(-)
create mode 100644 deliver-front/vue/src/store/modules/dashboard.ts
create mode 100644 deliver-front/vue/src/store/modules/types/types.ts
diff --git a/deliver-front/vue/src/api/dashboard.ts b/deliver-front/vue/src/api/dashboard.ts
index c7f963ed..a60a0649 100644
--- a/deliver-front/vue/src/api/dashboard.ts
+++ b/deliver-front/vue/src/api/dashboard.ts
@@ -1,13 +1,13 @@
import request from '@/utils/request'
-// interface DashboardHeadData {
-// numberOfMessagesToday: string
-// numberOfPlatformFiles: string
-// accumulatedTemplateOwnership: string
-// numberOfApps: string
-// }
+export interface DashboardHeadData {
+ numberOfMessagesToday?: string
+ numberOfPlatformFiles?: string
+ accumulatedTemplateOwnership?: string
+ numberOfApps?: string
+}
-export async function getDashboardHeadData(): Promise {
+export async function getDashboardHeadData(): Promise {
return await request({
url: '/dashboard/getDashboardHeadData',
method: 'post'
diff --git a/deliver-front/vue/src/main.ts b/deliver-front/vue/src/main.ts
index 3ff0f8a8..bca131b4 100644
--- a/deliver-front/vue/src/main.ts
+++ b/deliver-front/vue/src/main.ts
@@ -1,9 +1,8 @@
import { createApp } from 'vue'
-import { createPinia } from 'pinia'
import './style.css'
import App from './App.vue'
import router from './router'
-const pinia = createPinia()
+import pinia from './store'
createApp(App).use(router).use(pinia).mount('#app')
diff --git a/deliver-front/vue/src/store/index.ts b/deliver-front/vue/src/store/index.ts
index 68ce550c..a45888d5 100644
--- a/deliver-front/vue/src/store/index.ts
+++ b/deliver-front/vue/src/store/index.ts
@@ -1,9 +1,4 @@
-import { defineStore } from 'pinia'
+import { createPinia } from 'pinia'
+const pinia = createPinia()
-export const useStore = defineStore('store', {
- state: () => {
- return {}
- },
- getters: {},
- actions: {}
-})
+export default pinia
diff --git a/deliver-front/vue/src/store/modules/dashboard.ts b/deliver-front/vue/src/store/modules/dashboard.ts
new file mode 100644
index 00000000..c48dec25
--- /dev/null
+++ b/deliver-front/vue/src/store/modules/dashboard.ts
@@ -0,0 +1,18 @@
+import { defineStore } from 'pinia'
+import { getDashboardHeadData, type DashboardHeadData } from '@/api/dashboard'
+
+export const useDashboardStore = defineStore('dashboard', {
+ state: () => {
+ return {
+ num: 0
+ }
+ },
+ actions: {
+ async getDashboardHeadData() {
+ const dashboardHeadData: DashboardHeadData = await getDashboardHeadData()
+ console.log(dashboardHeadData)
+ return dashboardHeadData
+ }
+ },
+ getters: {}
+})
diff --git a/deliver-front/vue/src/store/modules/types/types.ts b/deliver-front/vue/src/store/modules/types/types.ts
new file mode 100644
index 00000000..e69de29b
diff --git a/deliver-front/vue/src/views/Dashboard/index.vue b/deliver-front/vue/src/views/Dashboard/index.vue
index aeaed136..65f68e09 100644
--- a/deliver-front/vue/src/views/Dashboard/index.vue
+++ b/deliver-front/vue/src/views/Dashboard/index.vue
@@ -8,7 +8,9 @@ import {
} from '@ant-design/icons-vue'
import Echarts from '@/components/Echarts/index.vue'
import { type EChartsOption } from 'echarts'
-import { getDashboardHeadData } from '@/api/dashboard'
+import { useDashboardStore } from '@/store/modules/dashboard'
+import { type DashboardHeadData } from '@/api/dashboard'
+import { onMounted, ref } from 'vue'
const chartsMessageOption: EChartsOption = {
legend: {
top: '20%'
@@ -111,7 +113,15 @@ const chartsAccountOption: EChartsOption = {
}
]
}
-const dashboardHeadData = await getDashboardHeadData()
+const dashboardHeadData = ref({})
+const getDashboardHeadData = async (): Promise => {
+ const dashboardStore = useDashboardStore()
+ dashboardHeadData.value = await dashboardStore.getDashboardHeadData()
+}
+
+onMounted(async () => {
+ await getDashboardHeadData()
+})
diff --git a/deliver-front/vue/vite.config.ts b/deliver-front/vue/vite.config.ts
index b9d24789..d91bd704 100644
--- a/deliver-front/vue/vite.config.ts
+++ b/deliver-front/vue/vite.config.ts
@@ -12,7 +12,7 @@ export default defineConfig({
proxy: {
'/admin': {
// 请求接口中要替换的标识
- target: 'http://localhost:9090', // 代理地址
+ target: 'http://10.100.127.154:9090', // 代理地址
changeOrigin: true, // 是否允许跨域
secure: true
}
--
Gitee
From 15842b7017fb285be79242609362773cd7f8fb2f Mon Sep 17 00:00:00 2001
From: hzhfsa <1957214281@qq.com>
Date: Tue, 7 Nov 2023 18:46:52 +0800
Subject: [PATCH 03/16] =?UTF-8?q?feat=EF=BC=9Aupdate?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
deliver-front/vue/components.d.ts | 1 +
.../views/Channel/components/searchForm.vue | 99 +++++
deliver-front/vue/src/views/Channel/index.vue | 401 +++++++++++++-----
.../vue/src/views/Channel/type/index.ts | 8 +
.../views/Message/components/searchForm.vue | 99 +++++
deliver-front/vue/src/views/Message/index.vue | 259 ++++-------
.../vue/src/views/Message/type/index.ts | 8 +
7 files changed, 581 insertions(+), 294 deletions(-)
create mode 100644 deliver-front/vue/src/views/Channel/components/searchForm.vue
create mode 100644 deliver-front/vue/src/views/Channel/type/index.ts
create mode 100644 deliver-front/vue/src/views/Message/components/searchForm.vue
create mode 100644 deliver-front/vue/src/views/Message/type/index.ts
diff --git a/deliver-front/vue/components.d.ts b/deliver-front/vue/components.d.ts
index 3aa43488..5c65a874 100644
--- a/deliver-front/vue/components.d.ts
+++ b/deliver-front/vue/components.d.ts
@@ -31,6 +31,7 @@ declare module 'vue' {
ARow: typeof import('ant-design-vue/es')['Row']
ASelect: typeof import('ant-design-vue/es')['Select']
ASelectOption: typeof import('ant-design-vue/es')['SelectOption']
+ ASpace: typeof import('ant-design-vue/es')['Space']
AStatistic: typeof import('ant-design-vue/es')['Statistic']
ASubMenu: typeof import('ant-design-vue/es')['SubMenu']
ATable: typeof import('ant-design-vue/es')['Table']
diff --git a/deliver-front/vue/src/views/Channel/components/searchForm.vue b/deliver-front/vue/src/views/Channel/components/searchForm.vue
new file mode 100644
index 00000000..7a64ecda
--- /dev/null
+++ b/deliver-front/vue/src/views/Channel/components/searchForm.vue
@@ -0,0 +1,99 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 范围1
+ 范围2
+
+
+
+
+
+
+ 类型1
+ 类型2
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 类型1
+ 类型2
+
+
+
+
+ 查询
+ (formRef as FormInstance).resetFields()">清空
+
+
+
+ 收起
+
+
+
+ 展开
+
+
+
+
+
+
+
+
diff --git a/deliver-front/vue/src/views/Channel/index.vue b/deliver-front/vue/src/views/Channel/index.vue
index 2d734683..8498bcca 100644
--- a/deliver-front/vue/src/views/Channel/index.vue
+++ b/deliver-front/vue/src/views/Channel/index.vue
@@ -1,140 +1,317 @@
+
-
-
-
-
+
+
+
+
+
+
+
+
+
+
新增模板
+
+
+
+
+
+
+
+ 杭州
+ 上海
+ 北京
+ 成都
+
+
+
+
+ 类型1
+ 类型2
+ 类型3
+ 类型4
+
+
+
+
+
+
+
+
+
+
+
+
+ 确认新建
+ 重置
+
+
+
+
+
+
+
+
+
+ 管理
+ 删除
+
+
+
+
-
+
+
diff --git a/deliver-front/vue/src/views/Channel/type/index.ts b/deliver-front/vue/src/views/Channel/type/index.ts
new file mode 100644
index 00000000..22b30626
--- /dev/null
+++ b/deliver-front/vue/src/views/Channel/type/index.ts
@@ -0,0 +1,8 @@
+export interface messageTemplate {
+ templateName: string
+ pushRange: string
+ userType: string
+ channel: string
+ messageType: string
+ channelApp: string
+}
diff --git a/deliver-front/vue/src/views/Message/components/searchForm.vue b/deliver-front/vue/src/views/Message/components/searchForm.vue
new file mode 100644
index 00000000..7a64ecda
--- /dev/null
+++ b/deliver-front/vue/src/views/Message/components/searchForm.vue
@@ -0,0 +1,99 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 范围1
+ 范围2
+
+
+
+
+
+
+ 类型1
+ 类型2
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 类型1
+ 类型2
+
+
+
+
+ 查询
+ (formRef as FormInstance).resetFields()">清空
+
+
+
+ 收起
+
+
+
+ 展开
+
+
+
+
+
+
+
+
diff --git a/deliver-front/vue/src/views/Message/index.vue b/deliver-front/vue/src/views/Message/index.vue
index f4612fb1..20d8fdec 100644
--- a/deliver-front/vue/src/views/Message/index.vue
+++ b/deliver-front/vue/src/views/Message/index.vue
@@ -1,45 +1,14 @@
diff --git a/deliver-front/vue/src/layouts/components/Header/index.vue b/deliver-front/vue/src/layouts/components/Header/index.vue
index 8d7aa0d3..d65d8754 100644
--- a/deliver-front/vue/src/layouts/components/Header/index.vue
+++ b/deliver-front/vue/src/layouts/components/Header/index.vue
@@ -13,7 +13,7 @@ const setShowAbout = (open: boolean): void => {
Deliver 企业消息推送平台
-
+
@@ -62,7 +62,7 @@ const setShowAbout = (open: boolean): void => {
.right {
font-size: 20px;
color: #6c6c6c;
- .router-link-active {
+ a {
margin-right: 10px;
}
.avatar {
diff --git a/deliver-front/vue/src/main.ts b/deliver-front/vue/src/main.ts
index bca131b4..97070e92 100644
--- a/deliver-front/vue/src/main.ts
+++ b/deliver-front/vue/src/main.ts
@@ -5,4 +5,6 @@ import App from './App.vue'
import router from './router'
import pinia from './store'
+import './permisson'
+
createApp(App).use(router).use(pinia).mount('#app')
diff --git a/deliver-front/vue/src/permisson.ts b/deliver-front/vue/src/permisson.ts
index 8324f09b..198cdaa9 100644
--- a/deliver-front/vue/src/permisson.ts
+++ b/deliver-front/vue/src/permisson.ts
@@ -1,4 +1,8 @@
-import { useRouter } from 'vue-router'
-const router = useRouter()
+import router from './router'
-router.beforeEach(async (from, to, next) => {})
+router.beforeEach(async (to, _from, next) => {
+ document.title = to.meta.title as string
+ console.log(to.meta.title)
+
+ next()
+})
diff --git a/deliver-front/vue/src/router/index.ts b/deliver-front/vue/src/router/index.ts
index c5567e62..4f38c45c 100644
--- a/deliver-front/vue/src/router/index.ts
+++ b/deliver-front/vue/src/router/index.ts
@@ -12,7 +12,7 @@ const routes: RouteRecordRaw[] = [
component: async () => await import('@/views/Welcome/index.vue'),
meta: {
parent: 'welcome',
- title: '我是登录'
+ title: '欢迎使用 Deliver'
}
},
{
@@ -20,7 +20,8 @@ const routes: RouteRecordRaw[] = [
name: 'dashboard',
component: async () => await import('@/views/Dashboard/index.vue'),
meta: {
- parent: 'home'
+ parent: 'home',
+ title: '控制面板'
}
},
{
@@ -28,7 +29,8 @@ const routes: RouteRecordRaw[] = [
name: 'message',
component: async () => await import('@/views/Message/index.vue'),
meta: {
- parent: 'home'
+ parent: 'home',
+ title: '消息配置'
}
},
{
@@ -36,7 +38,8 @@ const routes: RouteRecordRaw[] = [
name: 'channel',
component: async () => await import('@/views/Channel/index.vue'),
meta: {
- parent: 'home'
+ parent: 'home',
+ title: '渠道 APP 配置'
}
},
{
@@ -44,7 +47,8 @@ const routes: RouteRecordRaw[] = [
name: 'log',
component: async () => await import('@/views/Log/index.vue'),
meta: {
- parent: 'home'
+ parent: 'home',
+ name: '平台文件管理'
}
},
{
@@ -52,7 +56,8 @@ const routes: RouteRecordRaw[] = [
name: 'setting',
component: async () => await import('@/views/Setting/index.vue'),
meta: {
- parent: 'home'
+ parent: 'home',
+ name: '系统设置'
}
}
]
diff --git a/deliver-front/vue/src/store/modules/dashboard.ts b/deliver-front/vue/src/store/modules/dashboard.ts
index c48dec25..e330e9a2 100644
--- a/deliver-front/vue/src/store/modules/dashboard.ts
+++ b/deliver-front/vue/src/store/modules/dashboard.ts
@@ -1,5 +1,107 @@
import { defineStore } from 'pinia'
-import { getDashboardHeadData, type DashboardHeadData } from '@/api/dashboard'
+import { getDashboardHeadData, getMessageInfo, type DashboardHeadData } from '@/api/dashboard'
+import { type EChartsOption } from 'echarts'
+
+const chartsMessageOption: EChartsOption = {
+ legend: {
+ top: '20%'
+ },
+ tooltip: {},
+ dataset: {
+ dimensions: ['product', '成功', '失败'],
+ source: [
+ ['0-4', 650, 20],
+ ['4-8', 650, 20],
+ ['8-12', 140, 100],
+ ['12-16', 86.4, 65.2],
+ ['16-20', 72.4, 53.9],
+ ['20-24', 650, 20]
+ ]
+ },
+ grid: {
+ top: '30%',
+ bottom: '10%'
+ },
+ xAxis: { type: 'category' },
+ yAxis: {},
+ series: [
+ { type: 'bar', color: '#5470C6' },
+ { type: 'bar', color: '#a90000' }
+ ]
+}
+// const chartsTemplateOption = {
+// tooltip: {
+// trigger: 'item'
+// },
+// series: [
+// {
+// name: 'Access From',
+// type: 'pie',
+// radius: '50%',
+// center: ['50%', '60%'],
+// data: [
+// { value: 1048, name: 'Search Engine' },
+// { value: 735, name: 'Direct' },
+// { value: 580, name: 'Email' },
+// { value: 484, name: 'Union Ads' },
+// { value: 300, name: 'Video Ads' }
+// ]
+// }
+// ]
+// }
+// const chartsChannelOption = {
+// tooltip: {
+// trigger: 'item'
+// },
+// series: [
+// {
+// name: 'Access From',
+// type: 'pie',
+// radius: '50%',
+// center: ['50%', '60%'],
+// data: [
+// { value: 1048, name: 'Search Engine' },
+// { value: 735, name: 'Direct' },
+// { value: 580, name: 'Email' },
+// { value: 484, name: 'Union Ads' },
+// { value: 300, name: 'Video Ads' }
+// ],
+// emphasis: {
+// itemStyle: {
+// shadowBlur: 10,
+// shadowOffsetX: 0,
+// shadowColor: 'rgba(0, 0, 0, 0.5)'
+// }
+// }
+// }
+// ]
+// }
+// const chartsAccountOption = {
+// tooltip: {
+// trigger: 'item'
+// },
+// series: [
+// {
+// name: 'Access From',
+// type: 'pie',
+// radius: ['50%', '60%'],
+// center: ['50%', '60%'],
+// avoidLabelOverlap: false,
+// itemStyle: {
+// borderRadius: 10,
+// borderColor: '#fff',
+// borderWidth: 2
+// },
+// data: [
+// { value: 1048, name: 'Search Engine' },
+// { value: 735, name: 'Direct' },
+// { value: 580, name: 'Email' },
+// { value: 484, name: 'Union Ads' },
+// { value: 300, name: 'Video Ads' }
+// ]
+// }
+// ]
+// }
export const useDashboardStore = defineStore('dashboard', {
state: () => {
@@ -12,6 +114,13 @@ export const useDashboardStore = defineStore('dashboard', {
const dashboardHeadData: DashboardHeadData = await getDashboardHeadData()
console.log(dashboardHeadData)
return dashboardHeadData
+ },
+ async getMessageInfo(dateSelect: number): Promise {
+ const messageData: messageDataSource = await getMessageInfo({ dateSelect })
+ if (chartsMessageOption.dataset !== undefined) {
+ chartsMessageOption.dataset.source = messageData
+ }
+ return chartsMessageOption
}
},
getters: {}
diff --git a/deliver-front/vue/src/views/Dashboard/index.vue b/deliver-front/vue/src/views/Dashboard/index.vue
index 65f68e09..eb1680ac 100644
--- a/deliver-front/vue/src/views/Dashboard/index.vue
+++ b/deliver-front/vue/src/views/Dashboard/index.vue
@@ -7,120 +7,23 @@ import {
QuestionCircleTwoTone
} from '@ant-design/icons-vue'
import Echarts from '@/components/Echarts/index.vue'
-import { type EChartsOption } from 'echarts'
import { useDashboardStore } from '@/store/modules/dashboard'
import { type DashboardHeadData } from '@/api/dashboard'
import { onMounted, ref } from 'vue'
-const chartsMessageOption: EChartsOption = {
- legend: {
- top: '20%'
- },
- tooltip: {},
- dataset: {
- source: [
- ['product', '成功', '失败'],
- ['0-4', 650, 20],
- ['4-8', 650, 20],
- ['8-12', 140, 100],
- ['12-16', 86.4, 65.2],
- ['16-20', 72.4, 53.9],
- ['20-24', 650, 20]
- ]
- },
- grid: {
- top: '30%',
- bottom: '10%'
- },
- xAxis: { type: 'category' },
- yAxis: {},
- // Declare several bar series, each will be mapped
- // to a column of dataset.source by default.
- series: [
- { type: 'bar', color: '#5470C6' },
- { type: 'bar', color: '#a90000' }
- ]
-}
-const chartsTemplateOption: EChartsOption = {
- tooltip: {
- trigger: 'item'
- },
- series: [
- {
- name: 'Access From',
- type: 'pie',
- radius: '50%',
- center: ['50%', '60%'],
- data: [
- { value: 1048, name: 'Search Engine' },
- { value: 735, name: 'Direct' },
- { value: 580, name: 'Email' },
- { value: 484, name: 'Union Ads' },
- { value: 300, name: 'Video Ads' }
- ]
- }
- ]
-}
-const chartsChannelOption: EChartsOption = {
- tooltip: {
- trigger: 'item'
- },
- series: [
- {
- name: 'Access From',
- type: 'pie',
- radius: '50%',
- center: ['50%', '60%'],
- data: [
- { value: 1048, name: 'Search Engine' },
- { value: 735, name: 'Direct' },
- { value: 580, name: 'Email' },
- { value: 484, name: 'Union Ads' },
- { value: 300, name: 'Video Ads' }
- ],
- emphasis: {
- itemStyle: {
- shadowBlur: 10,
- shadowOffsetX: 0,
- shadowColor: 'rgba(0, 0, 0, 0.5)'
- }
- }
- }
- ]
-}
-const chartsAccountOption: EChartsOption = {
- tooltip: {
- trigger: 'item'
- },
- series: [
- {
- name: 'Access From',
- type: 'pie',
- radius: ['50%', '60%'],
- center: ['50%', '60%'],
- avoidLabelOverlap: false,
- itemStyle: {
- borderRadius: 10,
- borderColor: '#fff',
- borderWidth: 2
- },
- data: [
- { value: 1048, name: 'Search Engine' },
- { value: 735, name: 'Direct' },
- { value: 580, name: 'Email' },
- { value: 484, name: 'Union Ads' },
- { value: 300, name: 'Video Ads' }
- ]
- }
- ]
-}
+import { type EChartsOption } from 'echarts'
+const dashboardStore = useDashboardStore()
const dashboardHeadData = ref({})
+const chartsMessageOption = ref({})
const getDashboardHeadData = async (): Promise => {
- const dashboardStore = useDashboardStore()
dashboardHeadData.value = await dashboardStore.getDashboardHeadData()
}
-
+const getMessageInfo = async (dataselect: number): Promise => {
+ chartsMessageOption.value = await dashboardStore.getMessageInfo(dataselect)
+ console.log(chartsMessageOption.value)
+}
onMounted(async () => {
await getDashboardHeadData()
+ await getMessageInfo(1)
})
@@ -206,24 +109,24 @@ onMounted(async () => {
-
+
-
+
diff --git a/deliver-front/vue/src/views/Welcome/index.vue b/deliver-front/vue/src/views/Welcome/index.vue
index 54df7b4a..f71f30a1 100644
--- a/deliver-front/vue/src/views/Welcome/index.vue
+++ b/deliver-front/vue/src/views/Welcome/index.vue
@@ -39,7 +39,7 @@ const cards = ref([
是一个面向企业的全面消息推送平台,旨在提供企业内部沟通和协作的便捷解决方案。它以轻量级部署、简单易用、支持多种通信渠道为特点,为企业提供高效的消息传递和通知功能。
-
+
--
Gitee
From 380ec90c1cf58c7e7090beb8ef8ab434776e1c0e Mon Sep 17 00:00:00 2001
From: dengyu <3233891353@qq.com>
Date: Wed, 8 Nov 2023 16:54:49 +0800
Subject: [PATCH 05/16] =?UTF-8?q?feat:=E7=BB=84=E4=BB=B6=E8=87=AA=E5=8A=A8?=
=?UTF-8?q?=E6=9B=B4=E6=96=B0?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
deliver-front/vue/components.d.ts | 11 -----------
1 file changed, 11 deletions(-)
diff --git a/deliver-front/vue/components.d.ts b/deliver-front/vue/components.d.ts
index 81d88c2d..a87e6976 100644
--- a/deliver-front/vue/components.d.ts
+++ b/deliver-front/vue/components.d.ts
@@ -11,14 +11,7 @@ declare module 'vue' {
ABreadcrumb: typeof import('ant-design-vue/es')['Breadcrumb']
AButton: typeof import('ant-design-vue/es')['Button']
ACard: typeof import('ant-design-vue/es')['Card']
- ACardMeta: typeof import('ant-design-vue/es')['CardMeta']
- ACheckbox: typeof import('ant-design-vue/es')['Checkbox']
- ACheckboxGroup: typeof import('ant-design-vue/es')['CheckboxGroup']
ACol: typeof import('ant-design-vue/es')['Col']
- ADivider: typeof import('ant-design-vue/es')['Divider']
- AForm: typeof import('ant-design-vue/es')['Form']
- AFormItem: typeof import('ant-design-vue/es')['FormItem']
- AInput: typeof import('ant-design-vue/es')['Input']
ALayout: typeof import('ant-design-vue/es')['Layout']
ALayoutContent: typeof import('ant-design-vue/es')['LayoutContent']
ALayoutHeader: typeof import('ant-design-vue/es')['LayoutHeader']
@@ -26,15 +19,11 @@ declare module 'vue' {
AMenu: typeof import('ant-design-vue/es')['Menu']
AMenuItem: typeof import('ant-design-vue/es')['MenuItem']
AModal: typeof import('ant-design-vue/es')['Modal']
- APagination: typeof import('ant-design-vue/es')['Pagination']
ARadioButton: typeof import('ant-design-vue/es')['RadioButton']
ARadioGroup: typeof import('ant-design-vue/es')['RadioGroup']
ARow: typeof import('ant-design-vue/es')['Row']
- ASelect: typeof import('ant-design-vue/es')['Select']
- ASelectOption: typeof import('ant-design-vue/es')['SelectOption']
AStatistic: typeof import('ant-design-vue/es')['Statistic']
ASubMenu: typeof import('ant-design-vue/es')['SubMenu']
- ATable: typeof import('ant-design-vue/es')['Table']
ATooltip: typeof import('ant-design-vue/es')['Tooltip']
Echarts: typeof import('./src/components/Echarts/index.vue')['default']
RouterLink: typeof import('vue-router')['RouterLink']
--
Gitee
From 51c606be0fb4c05330149f7d5d91db69f44b23ae Mon Sep 17 00:00:00 2001
From: dengyu <3233891353@qq.com>
Date: Wed, 8 Nov 2023 16:55:45 +0800
Subject: [PATCH 06/16] =?UTF-8?q?feat:=E7=BB=84=E4=BB=B6=E8=87=AA=E5=8A=A8?=
=?UTF-8?q?=E6=9B=B4=E6=96=B0?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
deliver-front/vue/components.d.ts | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/deliver-front/vue/components.d.ts b/deliver-front/vue/components.d.ts
index a87e6976..2cc346f5 100644
--- a/deliver-front/vue/components.d.ts
+++ b/deliver-front/vue/components.d.ts
@@ -12,6 +12,9 @@ declare module 'vue' {
AButton: typeof import('ant-design-vue/es')['Button']
ACard: typeof import('ant-design-vue/es')['Card']
ACol: typeof import('ant-design-vue/es')['Col']
+ AForm: typeof import('ant-design-vue/es')['Form']
+ AFormItem: typeof import('ant-design-vue/es')['FormItem']
+ AInput: typeof import('ant-design-vue/es')['Input']
ALayout: typeof import('ant-design-vue/es')['Layout']
ALayoutContent: typeof import('ant-design-vue/es')['LayoutContent']
ALayoutHeader: typeof import('ant-design-vue/es')['LayoutHeader']
@@ -22,8 +25,11 @@ declare module 'vue' {
ARadioButton: typeof import('ant-design-vue/es')['RadioButton']
ARadioGroup: typeof import('ant-design-vue/es')['RadioGroup']
ARow: typeof import('ant-design-vue/es')['Row']
+ ASelect: typeof import('ant-design-vue/es')['Select']
+ ASelectOption: typeof import('ant-design-vue/es')['SelectOption']
AStatistic: typeof import('ant-design-vue/es')['Statistic']
ASubMenu: typeof import('ant-design-vue/es')['SubMenu']
+ ATable: typeof import('ant-design-vue/es')['Table']
ATooltip: typeof import('ant-design-vue/es')['Tooltip']
Echarts: typeof import('./src/components/Echarts/index.vue')['default']
RouterLink: typeof import('vue-router')['RouterLink']
--
Gitee
From 7b42cf72d5cb85ed718c711b7571ffa47bded3bc Mon Sep 17 00:00:00 2001
From: dengyu <3233891353@qq.com>
Date: Wed, 8 Nov 2023 17:04:34 +0800
Subject: [PATCH 07/16] =?UTF-8?q?style:=E6=A8=AA=E5=B9=85=E6=A0=B7?=
=?UTF-8?q?=E5=BC=8F=E4=BF=AE=E6=94=B9?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
deliver-front/vue/src/views/Banner/index.vue | 18 +++++++-----------
1 file changed, 7 insertions(+), 11 deletions(-)
diff --git a/deliver-front/vue/src/views/Banner/index.vue b/deliver-front/vue/src/views/Banner/index.vue
index 921a805a..70c0a1fd 100644
--- a/deliver-front/vue/src/views/Banner/index.vue
+++ b/deliver-front/vue/src/views/Banner/index.vue
@@ -15,17 +15,13 @@
);
"
>
-
-
-
-
⭐️ 如果你喜欢 Deliver 消息推送平台,请给它一个 Star Gitee,你的支持将是我们前行的动力,项目正在积极开发,欢迎大家提交 PR、提供建设,共建社区生态。👏🏻
+
+
+
⭐️ 如果你喜欢 Deliver 消息推送平台,请给它一个 Star
+ Gitee
+ ,你的支持将是我们前行的动力,项目正在积极开发,欢迎大家提交 PR、提供建设,共建社区生态。👏🏻
--
Gitee
From a60d8129ce184d7e71b792ddb2232be91a7ebbcf Mon Sep 17 00:00:00 2001
From: dengyu <3233891353@qq.com>
Date: Wed, 8 Nov 2023 22:41:53 +0800
Subject: [PATCH 08/16] =?UTF-8?q?feat(dashboard):=E6=8E=A5=E5=8F=A3?=
=?UTF-8?q?=E5=AF=B9=E6=8E=A5=E5=AE=8C=E6=88=90?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
deliver-front/vue/components.d.ts | 1 +
deliver-front/vue/src/api/dashboard.ts | 23 +-
.../vue/src/components/Echarts/index.vue | 40 +++-
deliver-front/vue/src/permisson.ts | 2 -
.../vue/src/store/modules/dashboard.ts | 210 +++++++++++-------
.../vue/src/views/Dashboard/index.vue | 24 +-
6 files changed, 200 insertions(+), 100 deletions(-)
diff --git a/deliver-front/vue/components.d.ts b/deliver-front/vue/components.d.ts
index 2cc346f5..ea3b1da5 100644
--- a/deliver-front/vue/components.d.ts
+++ b/deliver-front/vue/components.d.ts
@@ -11,6 +11,7 @@ declare module 'vue' {
ABreadcrumb: typeof import('ant-design-vue/es')['Breadcrumb']
AButton: typeof import('ant-design-vue/es')['Button']
ACard: typeof import('ant-design-vue/es')['Card']
+ ACardMeta: typeof import('ant-design-vue/es')['CardMeta']
ACol: typeof import('ant-design-vue/es')['Col']
AForm: typeof import('ant-design-vue/es')['Form']
AFormItem: typeof import('ant-design-vue/es')['FormItem']
diff --git a/deliver-front/vue/src/api/dashboard.ts b/deliver-front/vue/src/api/dashboard.ts
index ae3e5614..cb7263ff 100644
--- a/deliver-front/vue/src/api/dashboard.ts
+++ b/deliver-front/vue/src/api/dashboard.ts
@@ -24,10 +24,31 @@ export async function getDashboardHeadData(): Promise
{
method: 'post'
})
}
-export async function getMessageInfo(data: { dateSelect: number }): Promise {
+export async function getMessageInfo(data: { dateSelect: number }): Promise {
return await request({
url: '/dashboard/getMessageInfo',
method: 'post',
data
})
}
+export async function getTemplateInfo(data: { dateSelect: number }): Promise {
+ return await request({
+ url: '/dashboard/getTemplateInfo',
+ method: 'post',
+ data
+ })
+}
+export async function getAppInfo(data: { dateSelect: number }): Promise {
+ return await request({
+ url: '/dashboard/getAppInfo',
+ method: 'post',
+ data
+ })
+}
+export async function getPushUserInfo(data: { dateSelect: number }): Promise {
+ return await request({
+ url: '/dashboard/getPushUserInfo',
+ method: 'post',
+ data
+ })
+}
diff --git a/deliver-front/vue/src/components/Echarts/index.vue b/deliver-front/vue/src/components/Echarts/index.vue
index 0bde541b..e456c209 100644
--- a/deliver-front/vue/src/components/Echarts/index.vue
+++ b/deliver-front/vue/src/components/Echarts/index.vue
@@ -1,8 +1,9 @@
@@ -112,21 +126,21 @@ onMounted(async () => {
-
+
--
Gitee
From 0248abf1a3786b9ad42cd0660a0205f4be571fa7 Mon Sep 17 00:00:00 2001
From: hzhfsa <1957214281@qq.com>
Date: Wed, 8 Nov 2023 23:01:15 +0800
Subject: [PATCH 09/16] =?UTF-8?q?feat:=E6=9B=B4=E6=96=B0=E8=A1=A8=E6=A0=BC?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
deliver-front/vue/components.d.ts | 5 +-
deliver-front/vue/src/api/message.ts | 10 +
deliver-front/vue/src/utils/date.ts | 10 +
.../views/Message/components/searchForm.vue | 62 ++-
deliver-front/vue/src/views/Message/index.vue | 375 +++++++++++-------
.../vue/src/views/Message/type/index.ts | 78 +++-
deliver-front/vue/vite.config.ts | 2 +-
7 files changed, 356 insertions(+), 186 deletions(-)
create mode 100644 deliver-front/vue/src/api/message.ts
create mode 100644 deliver-front/vue/src/utils/date.ts
diff --git a/deliver-front/vue/components.d.ts b/deliver-front/vue/components.d.ts
index 81d88c2d..1f81a82c 100644
--- a/deliver-front/vue/components.d.ts
+++ b/deliver-front/vue/components.d.ts
@@ -8,14 +8,13 @@ export {}
declare module 'vue' {
export interface GlobalComponents {
AAvatar: typeof import('ant-design-vue/es')['Avatar']
+ ABadge: typeof import('ant-design-vue/es')['Badge']
ABreadcrumb: typeof import('ant-design-vue/es')['Breadcrumb']
AButton: typeof import('ant-design-vue/es')['Button']
ACard: typeof import('ant-design-vue/es')['Card']
ACardMeta: typeof import('ant-design-vue/es')['CardMeta']
- ACheckbox: typeof import('ant-design-vue/es')['Checkbox']
- ACheckboxGroup: typeof import('ant-design-vue/es')['CheckboxGroup']
ACol: typeof import('ant-design-vue/es')['Col']
- ADivider: typeof import('ant-design-vue/es')['Divider']
+ ADropdown: typeof import('ant-design-vue/es')['Dropdown']
AForm: typeof import('ant-design-vue/es')['Form']
AFormItem: typeof import('ant-design-vue/es')['FormItem']
AInput: typeof import('ant-design-vue/es')['Input']
diff --git a/deliver-front/vue/src/api/message.ts b/deliver-front/vue/src/api/message.ts
new file mode 100644
index 00000000..97b96536
--- /dev/null
+++ b/deliver-front/vue/src/api/message.ts
@@ -0,0 +1,10 @@
+import request from '@/utils/request'
+import type { searchMessage } from '@/views/Message/type'
+
+export async function getTemplatePages(data: searchMessage): Promise
{
+ return await request({
+ url: '/template/search',
+ method: 'post',
+ data
+ })
+}
diff --git a/deliver-front/vue/src/utils/date.ts b/deliver-front/vue/src/utils/date.ts
new file mode 100644
index 00000000..ca7b5b97
--- /dev/null
+++ b/deliver-front/vue/src/utils/date.ts
@@ -0,0 +1,10 @@
+export const getDate = (d): string => {
+ const date = new Date(d)
+ const year = date.getFullYear()
+ const month = String(date.getMonth() + 1).padStart(2, '0')
+ const day = String(date.getDate()).padStart(2, '0')
+ const hour = String(date.getHours()).padStart(2, '0')
+ const minute = String(date.getMinutes()).padStart(2, '0')
+ const second = String(date.getSeconds()).padStart(2, '0')
+ return `${year}-${month}-${day} ${hour}:${minute}:${second}`
+}
diff --git a/deliver-front/vue/src/views/Message/components/searchForm.vue b/deliver-front/vue/src/views/Message/components/searchForm.vue
index 7a64ecda..c2cc71fa 100644
--- a/deliver-front/vue/src/views/Message/components/searchForm.vue
+++ b/deliver-front/vue/src/views/Message/components/searchForm.vue
@@ -1,74 +1,58 @@
-
+
-
+
-
+
范围1
范围2
-
-
- 类型1
- 类型2
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 类型1
- 类型2
+
+
+ 类型1
+ 类型2
+ 类型3
+ 类型4
@@ -79,7 +63,7 @@ const qudaoOptions = [{ value: '默认标签1' }, { value: '默认标签2' }, {
'margin-bottom': expand === true ? '24px' : '0'
}"
>
- 查询
+ 查询
(formRef as FormInstance).resetFields()">清空
diff --git a/deliver-front/vue/src/views/Message/index.vue b/deliver-front/vue/src/views/Message/index.vue
index c025e599..6dab8b22 100644
--- a/deliver-front/vue/src/views/Message/index.vue
+++ b/deliver-front/vue/src/views/Message/index.vue
@@ -1,145 +1,170 @@
-
+
@@ -171,30 +257,20 @@ const data = ref([
新增模板
-
+
-
-
+
+
+
+
+
+ 启用
+
+
+
+ 禁用
+
+
编辑
删除
+
+
+
+
+
@@ -249,13 +339,16 @@ const data = ref([
height: 100%;
overflow: auto;
}
+
.search {
padding: 24px 24px 0 24px;
background: #ffffff;
border-radius: 6px;
+
.search-item:nth-child(1) {
margin-left: 15px;
}
+
.search-item:nth-child(2) {
margin-left: 30px;
}
@@ -267,6 +360,7 @@ const data = ref([
display: flex;
align-items: center;
justify-content: right;
+
.addModule {
margin: 0px 20px;
}
@@ -276,17 +370,20 @@ const data = ref([
.tem-item {
margin-top: 20px;
}
+
.tem-item:nth-child(7) {
text-align: right;
margin-left: 300px;
}
}
+
.message-section {
height: 100%;
border-radius: 6px;
margin-top: 12px;
background: #ffffff;
padding: 12px;
+
.btn-manager {
margin-right: 10px;
}
diff --git a/deliver-front/vue/src/views/Message/type/index.ts b/deliver-front/vue/src/views/Message/type/index.ts
index 22b30626..d4af1cd5 100644
--- a/deliver-front/vue/src/views/Message/type/index.ts
+++ b/deliver-front/vue/src/views/Message/type/index.ts
@@ -1,8 +1,78 @@
export interface messageTemplate {
+ /**
+ * 模板id
+ */
+ templateId: string
+ /**
+ * 模板名
+ */
templateName: string
- pushRange: string
- userType: string
- channel: string
+ /**
+ * 推送范围
+ */
+ pushRange: number
+ /**
+ * 用户类型
+ */
+ usersType: number
+ // /**
+ // * 推送方式
+ // */
+ pushWays?: string
+ /**
+ * 渠道选择
+ */
+ channelType: number
+ /**
+ * 消息类型
+ */
messageType: string
- channelApp: string
+ /**
+ * 模板累计使用数
+ */
+ useCount: number
+ /**
+ * 模板状态
+ */
+ templateStatus: number
+ /**
+ * 创建用户
+ */
+ createUser: string
+ /**
+ * 创建时间
+ */
+ createTime: string
+ /**
+ * Appid
+ */
+ appId: number
+ /**
+ * App名称
+ */
+ appName: string
+}
+
+// 搜索框接口
+export interface searchMessage {
+ /**
+ * 模板名
+ */
+ templateName?: string
+ /**
+ * 推送范围
+ */
+ pushRange?: number
+ /**
+ * 用户类型
+ */
+ usersType?: number
+ /**
+ * 当前页面序号
+ */
+ currentPage: number
+ /**
+ * 页面大小
+ */
+ pageSize: number
}
diff --git a/deliver-front/vue/vite.config.ts b/deliver-front/vue/vite.config.ts
index b9d24789..d91bd704 100644
--- a/deliver-front/vue/vite.config.ts
+++ b/deliver-front/vue/vite.config.ts
@@ -12,7 +12,7 @@ export default defineConfig({
proxy: {
'/admin': {
// 请求接口中要替换的标识
- target: 'http://localhost:9090', // 代理地址
+ target: 'http://10.100.127.154:9090', // 代理地址
changeOrigin: true, // 是否允许跨域
secure: true
}
--
Gitee
From 94d7d49174cebc40b41f02277761bc04dc90a15c Mon Sep 17 00:00:00 2001
From: dengyu <3233891353@qq.com>
Date: Fri, 10 Nov 2023 20:00:03 +0800
Subject: [PATCH 10/16] =?UTF-8?q?feat:=E6=B7=BB=E5=8A=A0=E5=8A=A0=E8=BD=BD?=
=?UTF-8?q?=E8=BF=9B=E5=BA=A6=E6=9D=A1?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
deliver-front/vue/index.html | 81 ++++++++++++++++---
deliver-front/vue/package-lock.json | 24 ++++++
deliver-front/vue/package.json | 2 +
.../src/layouts/components/ItemLink/index.vue | 8 +-
deliver-front/vue/src/permisson.ts | 5 ++
deliver-front/vue/src/utils/nprogreess.ts | 21 +++++
6 files changed, 127 insertions(+), 14 deletions(-)
create mode 100644 deliver-front/vue/src/utils/nprogreess.ts
diff --git a/deliver-front/vue/index.html b/deliver-front/vue/index.html
index 03b05335..35eec1db 100644
--- a/deliver-front/vue/index.html
+++ b/deliver-front/vue/index.html
@@ -1,13 +1,72 @@
-
-
-
-
- Deliver
-
-
-
-
-
-
+
+
+
+
+
+ Deliver
+
+
+
+
+
+
+
+
+