diff --git a/20250026.zip b/20250026.zip
deleted file mode 100644
index 891fee8..0000000
--- a/20250026.zip
+++ /dev/null
Binary files differ
diff --git a/20250026.zip b/20250026.zip
deleted file mode 100644
index 891fee8..0000000
--- a/20250026.zip
+++ /dev/null
Binary files differ
diff --git a/public/config/config.json b/public/config/config.json
index 8882269..6aa50b7 100644
--- a/public/config/config.json
+++ b/public/config/config.json
@@ -19,5 +19,6 @@
"preventReclick": 2000,
"gmStopLoinPage": "0",
"jessibucaDec": "这是下面jessibuca字段的描述:pro代表使用Pro版本,open代表使用开源版本",
- "jessibucaVersion": "pro"
+ "jessibucaVersion": "pro",
+ "useMSE": "false"
}
diff --git a/20250026.zip b/20250026.zip
deleted file mode 100644
index 891fee8..0000000
--- a/20250026.zip
+++ /dev/null
Binary files differ
diff --git a/public/config/config.json b/public/config/config.json
index 8882269..6aa50b7 100644
--- a/public/config/config.json
+++ b/public/config/config.json
@@ -19,5 +19,6 @@
"preventReclick": 2000,
"gmStopLoinPage": "0",
"jessibucaDec": "这是下面jessibuca字段的描述:pro代表使用Pro版本,open代表使用开源版本",
- "jessibucaVersion": "pro"
+ "jessibucaVersion": "pro",
+ "useMSE": "false"
}
diff --git a/src/api/system/multiTenant.ts b/src/api/system/multiTenant.ts
index 43ae886..1789858 100644
--- a/src/api/system/multiTenant.ts
+++ b/src/api/system/multiTenant.ts
@@ -13,6 +13,15 @@
})
}
+// 租户分页
+export function getTenantList(data: { keywords?: string; tenantName?: string }) {
+ return request({
+ url: `${prefix}/tenant/list`,
+ method: 'get',
+ params: data,
+ })
+}
+
// 租户设定
export function multiTenantConfig(data: { tenantId: string }) {
return request({
@@ -21,3 +30,38 @@
params: data,
})
}
+
+// 删除
+export function delTenant(data: { tenantId: string }) {
+ return request({
+ url: `${prefix}/tenant/delete`,
+ method: 'post',
+ params: data,
+ })
+}
+
+// 新增
+export function addTenant(data: Object) {
+ return request({
+ url: `${prefix}/tenant/add`,
+ method: 'post',
+ data,
+ })
+}
+
+// 编辑
+export function editTenant(data: Object) {
+ return request({
+ url: `${prefix}/tenant/update`,
+ method: 'post',
+ data,
+ })
+}
+
+// 新增
+export function detailTenant(data: { tenantId: string }) {
+ return request({
+ url: `${prefix}/tenant/detail/${data.tenantId}`,
+ method: 'get',
+ })
+}
diff --git a/20250026.zip b/20250026.zip
deleted file mode 100644
index 891fee8..0000000
--- a/20250026.zip
+++ /dev/null
Binary files differ
diff --git a/public/config/config.json b/public/config/config.json
index 8882269..6aa50b7 100644
--- a/public/config/config.json
+++ b/public/config/config.json
@@ -19,5 +19,6 @@
"preventReclick": 2000,
"gmStopLoinPage": "0",
"jessibucaDec": "这是下面jessibuca字段的描述:pro代表使用Pro版本,open代表使用开源版本",
- "jessibucaVersion": "pro"
+ "jessibucaVersion": "pro",
+ "useMSE": "false"
}
diff --git a/src/api/system/multiTenant.ts b/src/api/system/multiTenant.ts
index 43ae886..1789858 100644
--- a/src/api/system/multiTenant.ts
+++ b/src/api/system/multiTenant.ts
@@ -13,6 +13,15 @@
})
}
+// 租户分页
+export function getTenantList(data: { keywords?: string; tenantName?: string }) {
+ return request({
+ url: `${prefix}/tenant/list`,
+ method: 'get',
+ params: data,
+ })
+}
+
// 租户设定
export function multiTenantConfig(data: { tenantId: string }) {
return request({
@@ -21,3 +30,38 @@
params: data,
})
}
+
+// 删除
+export function delTenant(data: { tenantId: string }) {
+ return request({
+ url: `${prefix}/tenant/delete`,
+ method: 'post',
+ params: data,
+ })
+}
+
+// 新增
+export function addTenant(data: Object) {
+ return request({
+ url: `${prefix}/tenant/add`,
+ method: 'post',
+ data,
+ })
+}
+
+// 编辑
+export function editTenant(data: Object) {
+ return request({
+ url: `${prefix}/tenant/update`,
+ method: 'post',
+ data,
+ })
+}
+
+// 新增
+export function detailTenant(data: { tenantId: string }) {
+ return request({
+ url: `${prefix}/tenant/detail/${data.tenantId}`,
+ method: 'get',
+ })
+}
diff --git a/src/assets/icons/icon-tenant-manage.svg b/src/assets/icons/icon-tenant-manage.svg
new file mode 100644
index 0000000..8fc82fa
--- /dev/null
+++ b/src/assets/icons/icon-tenant-manage.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/20250026.zip b/20250026.zip
deleted file mode 100644
index 891fee8..0000000
--- a/20250026.zip
+++ /dev/null
Binary files differ
diff --git a/public/config/config.json b/public/config/config.json
index 8882269..6aa50b7 100644
--- a/public/config/config.json
+++ b/public/config/config.json
@@ -19,5 +19,6 @@
"preventReclick": 2000,
"gmStopLoinPage": "0",
"jessibucaDec": "这是下面jessibuca字段的描述:pro代表使用Pro版本,open代表使用开源版本",
- "jessibucaVersion": "pro"
+ "jessibucaVersion": "pro",
+ "useMSE": "false"
}
diff --git a/src/api/system/multiTenant.ts b/src/api/system/multiTenant.ts
index 43ae886..1789858 100644
--- a/src/api/system/multiTenant.ts
+++ b/src/api/system/multiTenant.ts
@@ -13,6 +13,15 @@
})
}
+// 租户分页
+export function getTenantList(data: { keywords?: string; tenantName?: string }) {
+ return request({
+ url: `${prefix}/tenant/list`,
+ method: 'get',
+ params: data,
+ })
+}
+
// 租户设定
export function multiTenantConfig(data: { tenantId: string }) {
return request({
@@ -21,3 +30,38 @@
params: data,
})
}
+
+// 删除
+export function delTenant(data: { tenantId: string }) {
+ return request({
+ url: `${prefix}/tenant/delete`,
+ method: 'post',
+ params: data,
+ })
+}
+
+// 新增
+export function addTenant(data: Object) {
+ return request({
+ url: `${prefix}/tenant/add`,
+ method: 'post',
+ data,
+ })
+}
+
+// 编辑
+export function editTenant(data: Object) {
+ return request({
+ url: `${prefix}/tenant/update`,
+ method: 'post',
+ data,
+ })
+}
+
+// 新增
+export function detailTenant(data: { tenantId: string }) {
+ return request({
+ url: `${prefix}/tenant/detail/${data.tenantId}`,
+ method: 'get',
+ })
+}
diff --git a/src/assets/icons/icon-tenant-manage.svg b/src/assets/icons/icon-tenant-manage.svg
new file mode 100644
index 0000000..8fc82fa
--- /dev/null
+++ b/src/assets/icons/icon-tenant-manage.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/components/Echart/radarChart.vue b/src/components/Echart/radarChart.vue
index ab0f398..5cf9832 100644
--- a/src/components/Echart/radarChart.vue
+++ b/src/components/Echart/radarChart.vue
@@ -48,6 +48,21 @@
},
},
/**
+ * 网格配置
+ */
+ grid: {
+ type: Object,
+ default: () => {
+ return {
+ top: 0,
+ left: '15%',
+ right: '50%',
+ bottom: 50,
+ containLabel: true, // 是否包含坐标轴的刻度标签
+ }
+ },
+ },
+ /**
* 图表宽
*/
width: {
@@ -127,6 +142,7 @@
const option: any = {
title: [{ text: props.title }],
legend: props.legend, // 图例
+ grid: props.grid, // 网格
tooltip: {
show: true,
confine: true, // 是否限制提示框在图表范围内
@@ -180,7 +196,7 @@
const radarData = {
indicator: props.radar,
nameGap: 5, // 文字距离
- radius: '75%', // 图比例大小
+ radius: '55%', // 图比例大小
axisName: {
color: '#a1cfd1',
},
diff --git a/20250026.zip b/20250026.zip
deleted file mode 100644
index 891fee8..0000000
--- a/20250026.zip
+++ /dev/null
Binary files differ
diff --git a/public/config/config.json b/public/config/config.json
index 8882269..6aa50b7 100644
--- a/public/config/config.json
+++ b/public/config/config.json
@@ -19,5 +19,6 @@
"preventReclick": 2000,
"gmStopLoinPage": "0",
"jessibucaDec": "这是下面jessibuca字段的描述:pro代表使用Pro版本,open代表使用开源版本",
- "jessibucaVersion": "pro"
+ "jessibucaVersion": "pro",
+ "useMSE": "false"
}
diff --git a/src/api/system/multiTenant.ts b/src/api/system/multiTenant.ts
index 43ae886..1789858 100644
--- a/src/api/system/multiTenant.ts
+++ b/src/api/system/multiTenant.ts
@@ -13,6 +13,15 @@
})
}
+// 租户分页
+export function getTenantList(data: { keywords?: string; tenantName?: string }) {
+ return request({
+ url: `${prefix}/tenant/list`,
+ method: 'get',
+ params: data,
+ })
+}
+
// 租户设定
export function multiTenantConfig(data: { tenantId: string }) {
return request({
@@ -21,3 +30,38 @@
params: data,
})
}
+
+// 删除
+export function delTenant(data: { tenantId: string }) {
+ return request({
+ url: `${prefix}/tenant/delete`,
+ method: 'post',
+ params: data,
+ })
+}
+
+// 新增
+export function addTenant(data: Object) {
+ return request({
+ url: `${prefix}/tenant/add`,
+ method: 'post',
+ data,
+ })
+}
+
+// 编辑
+export function editTenant(data: Object) {
+ return request({
+ url: `${prefix}/tenant/update`,
+ method: 'post',
+ data,
+ })
+}
+
+// 新增
+export function detailTenant(data: { tenantId: string }) {
+ return request({
+ url: `${prefix}/tenant/detail/${data.tenantId}`,
+ method: 'get',
+ })
+}
diff --git a/src/assets/icons/icon-tenant-manage.svg b/src/assets/icons/icon-tenant-manage.svg
new file mode 100644
index 0000000..8fc82fa
--- /dev/null
+++ b/src/assets/icons/icon-tenant-manage.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/components/Echart/radarChart.vue b/src/components/Echart/radarChart.vue
index ab0f398..5cf9832 100644
--- a/src/components/Echart/radarChart.vue
+++ b/src/components/Echart/radarChart.vue
@@ -48,6 +48,21 @@
},
},
/**
+ * 网格配置
+ */
+ grid: {
+ type: Object,
+ default: () => {
+ return {
+ top: 0,
+ left: '15%',
+ right: '50%',
+ bottom: 50,
+ containLabel: true, // 是否包含坐标轴的刻度标签
+ }
+ },
+ },
+ /**
* 图表宽
*/
width: {
@@ -127,6 +142,7 @@
const option: any = {
title: [{ text: props.title }],
legend: props.legend, // 图例
+ grid: props.grid, // 网格
tooltip: {
show: true,
confine: true, // 是否限制提示框在图表范围内
@@ -180,7 +196,7 @@
const radarData = {
indicator: props.radar,
nameGap: 5, // 文字距离
- radius: '75%', // 图比例大小
+ radius: '55%', // 图比例大小
axisName: {
color: '#a1cfd1',
},
diff --git a/src/layouts/components/Tools/index.vue b/src/layouts/components/Tools/index.vue
index 9f69900..a735a1f 100644
--- a/src/layouts/components/Tools/index.vue
+++ b/src/layouts/components/Tools/index.vue
@@ -123,7 +123,7 @@
// 连接 websocket
// websocket.initWebSocket()
systemType.value = window.localStorage.getItem('systemType') as string
- fetchMultiTenantList()
+ fetchMultiTenantList() // 获取租户权限列表
})
onBeforeMount(() => {
// 断开 websocket
diff --git a/20250026.zip b/20250026.zip
deleted file mode 100644
index 891fee8..0000000
--- a/20250026.zip
+++ /dev/null
Binary files differ
diff --git a/public/config/config.json b/public/config/config.json
index 8882269..6aa50b7 100644
--- a/public/config/config.json
+++ b/public/config/config.json
@@ -19,5 +19,6 @@
"preventReclick": 2000,
"gmStopLoinPage": "0",
"jessibucaDec": "这是下面jessibuca字段的描述:pro代表使用Pro版本,open代表使用开源版本",
- "jessibucaVersion": "pro"
+ "jessibucaVersion": "pro",
+ "useMSE": "false"
}
diff --git a/src/api/system/multiTenant.ts b/src/api/system/multiTenant.ts
index 43ae886..1789858 100644
--- a/src/api/system/multiTenant.ts
+++ b/src/api/system/multiTenant.ts
@@ -13,6 +13,15 @@
})
}
+// 租户分页
+export function getTenantList(data: { keywords?: string; tenantName?: string }) {
+ return request({
+ url: `${prefix}/tenant/list`,
+ method: 'get',
+ params: data,
+ })
+}
+
// 租户设定
export function multiTenantConfig(data: { tenantId: string }) {
return request({
@@ -21,3 +30,38 @@
params: data,
})
}
+
+// 删除
+export function delTenant(data: { tenantId: string }) {
+ return request({
+ url: `${prefix}/tenant/delete`,
+ method: 'post',
+ params: data,
+ })
+}
+
+// 新增
+export function addTenant(data: Object) {
+ return request({
+ url: `${prefix}/tenant/add`,
+ method: 'post',
+ data,
+ })
+}
+
+// 编辑
+export function editTenant(data: Object) {
+ return request({
+ url: `${prefix}/tenant/update`,
+ method: 'post',
+ data,
+ })
+}
+
+// 新增
+export function detailTenant(data: { tenantId: string }) {
+ return request({
+ url: `${prefix}/tenant/detail/${data.tenantId}`,
+ method: 'get',
+ })
+}
diff --git a/src/assets/icons/icon-tenant-manage.svg b/src/assets/icons/icon-tenant-manage.svg
new file mode 100644
index 0000000..8fc82fa
--- /dev/null
+++ b/src/assets/icons/icon-tenant-manage.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/components/Echart/radarChart.vue b/src/components/Echart/radarChart.vue
index ab0f398..5cf9832 100644
--- a/src/components/Echart/radarChart.vue
+++ b/src/components/Echart/radarChart.vue
@@ -48,6 +48,21 @@
},
},
/**
+ * 网格配置
+ */
+ grid: {
+ type: Object,
+ default: () => {
+ return {
+ top: 0,
+ left: '15%',
+ right: '50%',
+ bottom: 50,
+ containLabel: true, // 是否包含坐标轴的刻度标签
+ }
+ },
+ },
+ /**
* 图表宽
*/
width: {
@@ -127,6 +142,7 @@
const option: any = {
title: [{ text: props.title }],
legend: props.legend, // 图例
+ grid: props.grid, // 网格
tooltip: {
show: true,
confine: true, // 是否限制提示框在图表范围内
@@ -180,7 +196,7 @@
const radarData = {
indicator: props.radar,
nameGap: 5, // 文字距离
- radius: '75%', // 图比例大小
+ radius: '55%', // 图比例大小
axisName: {
color: '#a1cfd1',
},
diff --git a/src/layouts/components/Tools/index.vue b/src/layouts/components/Tools/index.vue
index 9f69900..a735a1f 100644
--- a/src/layouts/components/Tools/index.vue
+++ b/src/layouts/components/Tools/index.vue
@@ -123,7 +123,7 @@
// 连接 websocket
// websocket.initWebSocket()
systemType.value = window.localStorage.getItem('systemType') as string
- fetchMultiTenantList()
+ fetchMultiTenantList() // 获取租户权限列表
})
onBeforeMount(() => {
// 断开 websocket
diff --git a/src/main.ts b/src/main.ts
index 4ecdd30..99cbb9e 100644
--- a/src/main.ts
+++ b/src/main.ts
@@ -52,6 +52,9 @@
window.localStorage.setItem('gmStopLoinPage', result.data.gmStopLoinPage)
// 使用jeccibuca的版本
window.localStorage.setItem('jessibucaVersion', result.data.jessibucaVersion)
+ // 硬解码还是软解码
+ window.localStorage.setItem('useMSE', result.data.useMSE)
+
window.localStorage.setItem('zoom', result.data.zoom)
const app = createApp(App)
diff --git a/20250026.zip b/20250026.zip
deleted file mode 100644
index 891fee8..0000000
--- a/20250026.zip
+++ /dev/null
Binary files differ
diff --git a/public/config/config.json b/public/config/config.json
index 8882269..6aa50b7 100644
--- a/public/config/config.json
+++ b/public/config/config.json
@@ -19,5 +19,6 @@
"preventReclick": 2000,
"gmStopLoinPage": "0",
"jessibucaDec": "这是下面jessibuca字段的描述:pro代表使用Pro版本,open代表使用开源版本",
- "jessibucaVersion": "pro"
+ "jessibucaVersion": "pro",
+ "useMSE": "false"
}
diff --git a/src/api/system/multiTenant.ts b/src/api/system/multiTenant.ts
index 43ae886..1789858 100644
--- a/src/api/system/multiTenant.ts
+++ b/src/api/system/multiTenant.ts
@@ -13,6 +13,15 @@
})
}
+// 租户分页
+export function getTenantList(data: { keywords?: string; tenantName?: string }) {
+ return request({
+ url: `${prefix}/tenant/list`,
+ method: 'get',
+ params: data,
+ })
+}
+
// 租户设定
export function multiTenantConfig(data: { tenantId: string }) {
return request({
@@ -21,3 +30,38 @@
params: data,
})
}
+
+// 删除
+export function delTenant(data: { tenantId: string }) {
+ return request({
+ url: `${prefix}/tenant/delete`,
+ method: 'post',
+ params: data,
+ })
+}
+
+// 新增
+export function addTenant(data: Object) {
+ return request({
+ url: `${prefix}/tenant/add`,
+ method: 'post',
+ data,
+ })
+}
+
+// 编辑
+export function editTenant(data: Object) {
+ return request({
+ url: `${prefix}/tenant/update`,
+ method: 'post',
+ data,
+ })
+}
+
+// 新增
+export function detailTenant(data: { tenantId: string }) {
+ return request({
+ url: `${prefix}/tenant/detail/${data.tenantId}`,
+ method: 'get',
+ })
+}
diff --git a/src/assets/icons/icon-tenant-manage.svg b/src/assets/icons/icon-tenant-manage.svg
new file mode 100644
index 0000000..8fc82fa
--- /dev/null
+++ b/src/assets/icons/icon-tenant-manage.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/components/Echart/radarChart.vue b/src/components/Echart/radarChart.vue
index ab0f398..5cf9832 100644
--- a/src/components/Echart/radarChart.vue
+++ b/src/components/Echart/radarChart.vue
@@ -48,6 +48,21 @@
},
},
/**
+ * 网格配置
+ */
+ grid: {
+ type: Object,
+ default: () => {
+ return {
+ top: 0,
+ left: '15%',
+ right: '50%',
+ bottom: 50,
+ containLabel: true, // 是否包含坐标轴的刻度标签
+ }
+ },
+ },
+ /**
* 图表宽
*/
width: {
@@ -127,6 +142,7 @@
const option: any = {
title: [{ text: props.title }],
legend: props.legend, // 图例
+ grid: props.grid, // 网格
tooltip: {
show: true,
confine: true, // 是否限制提示框在图表范围内
@@ -180,7 +196,7 @@
const radarData = {
indicator: props.radar,
nameGap: 5, // 文字距离
- radius: '75%', // 图比例大小
+ radius: '55%', // 图比例大小
axisName: {
color: '#a1cfd1',
},
diff --git a/src/layouts/components/Tools/index.vue b/src/layouts/components/Tools/index.vue
index 9f69900..a735a1f 100644
--- a/src/layouts/components/Tools/index.vue
+++ b/src/layouts/components/Tools/index.vue
@@ -123,7 +123,7 @@
// 连接 websocket
// websocket.initWebSocket()
systemType.value = window.localStorage.getItem('systemType') as string
- fetchMultiTenantList()
+ fetchMultiTenantList() // 获取租户权限列表
})
onBeforeMount(() => {
// 断开 websocket
diff --git a/src/main.ts b/src/main.ts
index 4ecdd30..99cbb9e 100644
--- a/src/main.ts
+++ b/src/main.ts
@@ -52,6 +52,9 @@
window.localStorage.setItem('gmStopLoinPage', result.data.gmStopLoinPage)
// 使用jeccibuca的版本
window.localStorage.setItem('jessibucaVersion', result.data.jessibucaVersion)
+ // 硬解码还是软解码
+ window.localStorage.setItem('useMSE', result.data.useMSE)
+
window.localStorage.setItem('zoom', result.data.zoom)
const app = createApp(App)
diff --git a/src/router/modules/monitor.ts b/src/router/modules/monitor.ts
index 5d45895..f5f0190 100644
--- a/src/router/modules/monitor.ts
+++ b/src/router/modules/monitor.ts
@@ -22,8 +22,8 @@
// import('@/views/monitor/realTime/index-noPlugin-single.vue'), // SDK单路
// import('@/views/monitor/realTime/index-noPlugin.vue'), // SDK4路
// import('@/views/monitor/realTime/index-isc-single.vue'), // isc
- import('@/views/monitor/realTime/index-media-single.vue'), // 商流媒体单路
- // import('@/views/monitor/realTime/index-new-gm-plugin.vue'), // 国
+ // import('@/views/monitor/realTime/index-media-single.vue'), // 商流媒体单路
+ import('@/views/monitor/realTime/index-new-gm-plugin.vue'), // 国
meta: {
title: '实时监控',
auth: '/realTime',
diff --git a/20250026.zip b/20250026.zip
deleted file mode 100644
index 891fee8..0000000
--- a/20250026.zip
+++ /dev/null
Binary files differ
diff --git a/public/config/config.json b/public/config/config.json
index 8882269..6aa50b7 100644
--- a/public/config/config.json
+++ b/public/config/config.json
@@ -19,5 +19,6 @@
"preventReclick": 2000,
"gmStopLoinPage": "0",
"jessibucaDec": "这是下面jessibuca字段的描述:pro代表使用Pro版本,open代表使用开源版本",
- "jessibucaVersion": "pro"
+ "jessibucaVersion": "pro",
+ "useMSE": "false"
}
diff --git a/src/api/system/multiTenant.ts b/src/api/system/multiTenant.ts
index 43ae886..1789858 100644
--- a/src/api/system/multiTenant.ts
+++ b/src/api/system/multiTenant.ts
@@ -13,6 +13,15 @@
})
}
+// 租户分页
+export function getTenantList(data: { keywords?: string; tenantName?: string }) {
+ return request({
+ url: `${prefix}/tenant/list`,
+ method: 'get',
+ params: data,
+ })
+}
+
// 租户设定
export function multiTenantConfig(data: { tenantId: string }) {
return request({
@@ -21,3 +30,38 @@
params: data,
})
}
+
+// 删除
+export function delTenant(data: { tenantId: string }) {
+ return request({
+ url: `${prefix}/tenant/delete`,
+ method: 'post',
+ params: data,
+ })
+}
+
+// 新增
+export function addTenant(data: Object) {
+ return request({
+ url: `${prefix}/tenant/add`,
+ method: 'post',
+ data,
+ })
+}
+
+// 编辑
+export function editTenant(data: Object) {
+ return request({
+ url: `${prefix}/tenant/update`,
+ method: 'post',
+ data,
+ })
+}
+
+// 新增
+export function detailTenant(data: { tenantId: string }) {
+ return request({
+ url: `${prefix}/tenant/detail/${data.tenantId}`,
+ method: 'get',
+ })
+}
diff --git a/src/assets/icons/icon-tenant-manage.svg b/src/assets/icons/icon-tenant-manage.svg
new file mode 100644
index 0000000..8fc82fa
--- /dev/null
+++ b/src/assets/icons/icon-tenant-manage.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/components/Echart/radarChart.vue b/src/components/Echart/radarChart.vue
index ab0f398..5cf9832 100644
--- a/src/components/Echart/radarChart.vue
+++ b/src/components/Echart/radarChart.vue
@@ -48,6 +48,21 @@
},
},
/**
+ * 网格配置
+ */
+ grid: {
+ type: Object,
+ default: () => {
+ return {
+ top: 0,
+ left: '15%',
+ right: '50%',
+ bottom: 50,
+ containLabel: true, // 是否包含坐标轴的刻度标签
+ }
+ },
+ },
+ /**
* 图表宽
*/
width: {
@@ -127,6 +142,7 @@
const option: any = {
title: [{ text: props.title }],
legend: props.legend, // 图例
+ grid: props.grid, // 网格
tooltip: {
show: true,
confine: true, // 是否限制提示框在图表范围内
@@ -180,7 +196,7 @@
const radarData = {
indicator: props.radar,
nameGap: 5, // 文字距离
- radius: '75%', // 图比例大小
+ radius: '55%', // 图比例大小
axisName: {
color: '#a1cfd1',
},
diff --git a/src/layouts/components/Tools/index.vue b/src/layouts/components/Tools/index.vue
index 9f69900..a735a1f 100644
--- a/src/layouts/components/Tools/index.vue
+++ b/src/layouts/components/Tools/index.vue
@@ -123,7 +123,7 @@
// 连接 websocket
// websocket.initWebSocket()
systemType.value = window.localStorage.getItem('systemType') as string
- fetchMultiTenantList()
+ fetchMultiTenantList() // 获取租户权限列表
})
onBeforeMount(() => {
// 断开 websocket
diff --git a/src/main.ts b/src/main.ts
index 4ecdd30..99cbb9e 100644
--- a/src/main.ts
+++ b/src/main.ts
@@ -52,6 +52,9 @@
window.localStorage.setItem('gmStopLoinPage', result.data.gmStopLoinPage)
// 使用jeccibuca的版本
window.localStorage.setItem('jessibucaVersion', result.data.jessibucaVersion)
+ // 硬解码还是软解码
+ window.localStorage.setItem('useMSE', result.data.useMSE)
+
window.localStorage.setItem('zoom', result.data.zoom)
const app = createApp(App)
diff --git a/src/router/modules/monitor.ts b/src/router/modules/monitor.ts
index 5d45895..f5f0190 100644
--- a/src/router/modules/monitor.ts
+++ b/src/router/modules/monitor.ts
@@ -22,8 +22,8 @@
// import('@/views/monitor/realTime/index-noPlugin-single.vue'), // SDK单路
// import('@/views/monitor/realTime/index-noPlugin.vue'), // SDK4路
// import('@/views/monitor/realTime/index-isc-single.vue'), // isc
- import('@/views/monitor/realTime/index-media-single.vue'), // 商流媒体单路
- // import('@/views/monitor/realTime/index-new-gm-plugin.vue'), // 国
+ // import('@/views/monitor/realTime/index-media-single.vue'), // 商流媒体单路
+ import('@/views/monitor/realTime/index-new-gm-plugin.vue'), // 国
meta: {
title: '实时监控',
auth: '/realTime',
diff --git a/src/router/modules/system.ts b/src/router/modules/system.ts
index 98d33ba..0e778b5 100644
--- a/src/router/modules/system.ts
+++ b/src/router/modules/system.ts
@@ -229,7 +229,7 @@
{
path: 'list',
name: 'loginDiaryList',
- component: () => import('@/views/system/log/LoginLog.vue'),
+ component: () => import('@/views/system/log/loginLog.vue'),
meta: {
title: '登录日志',
auth: '/sys/loginLog',
@@ -265,6 +265,31 @@
},
],
},
+ {
+ path: '/multiTenant',
+ component: Layout,
+ redirect: '/multiTenant/index',
+ name: 'MultiTenant',
+ meta: {
+ title: '租户管理',
+ icon: 'ep:key',
+ auth: '/sys/multiTenant',
+ },
+ children: [
+ {
+ path: 'index',
+ name: 'MultiTenantIndex',
+ component: () => import('@/views/system/multiTenant/index.vue'),
+ meta: {
+ title: '租户管理',
+ auth: '/sys/multiTenant',
+ sidebar: false,
+ breadcrumb: false,
+ activeMenu: '/bsConfig',
+ },
+ },
+ ],
+ },
// ],
// },
]
diff --git a/20250026.zip b/20250026.zip
deleted file mode 100644
index 891fee8..0000000
--- a/20250026.zip
+++ /dev/null
Binary files differ
diff --git a/public/config/config.json b/public/config/config.json
index 8882269..6aa50b7 100644
--- a/public/config/config.json
+++ b/public/config/config.json
@@ -19,5 +19,6 @@
"preventReclick": 2000,
"gmStopLoinPage": "0",
"jessibucaDec": "这是下面jessibuca字段的描述:pro代表使用Pro版本,open代表使用开源版本",
- "jessibucaVersion": "pro"
+ "jessibucaVersion": "pro",
+ "useMSE": "false"
}
diff --git a/src/api/system/multiTenant.ts b/src/api/system/multiTenant.ts
index 43ae886..1789858 100644
--- a/src/api/system/multiTenant.ts
+++ b/src/api/system/multiTenant.ts
@@ -13,6 +13,15 @@
})
}
+// 租户分页
+export function getTenantList(data: { keywords?: string; tenantName?: string }) {
+ return request({
+ url: `${prefix}/tenant/list`,
+ method: 'get',
+ params: data,
+ })
+}
+
// 租户设定
export function multiTenantConfig(data: { tenantId: string }) {
return request({
@@ -21,3 +30,38 @@
params: data,
})
}
+
+// 删除
+export function delTenant(data: { tenantId: string }) {
+ return request({
+ url: `${prefix}/tenant/delete`,
+ method: 'post',
+ params: data,
+ })
+}
+
+// 新增
+export function addTenant(data: Object) {
+ return request({
+ url: `${prefix}/tenant/add`,
+ method: 'post',
+ data,
+ })
+}
+
+// 编辑
+export function editTenant(data: Object) {
+ return request({
+ url: `${prefix}/tenant/update`,
+ method: 'post',
+ data,
+ })
+}
+
+// 新增
+export function detailTenant(data: { tenantId: string }) {
+ return request({
+ url: `${prefix}/tenant/detail/${data.tenantId}`,
+ method: 'get',
+ })
+}
diff --git a/src/assets/icons/icon-tenant-manage.svg b/src/assets/icons/icon-tenant-manage.svg
new file mode 100644
index 0000000..8fc82fa
--- /dev/null
+++ b/src/assets/icons/icon-tenant-manage.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/components/Echart/radarChart.vue b/src/components/Echart/radarChart.vue
index ab0f398..5cf9832 100644
--- a/src/components/Echart/radarChart.vue
+++ b/src/components/Echart/radarChart.vue
@@ -48,6 +48,21 @@
},
},
/**
+ * 网格配置
+ */
+ grid: {
+ type: Object,
+ default: () => {
+ return {
+ top: 0,
+ left: '15%',
+ right: '50%',
+ bottom: 50,
+ containLabel: true, // 是否包含坐标轴的刻度标签
+ }
+ },
+ },
+ /**
* 图表宽
*/
width: {
@@ -127,6 +142,7 @@
const option: any = {
title: [{ text: props.title }],
legend: props.legend, // 图例
+ grid: props.grid, // 网格
tooltip: {
show: true,
confine: true, // 是否限制提示框在图表范围内
@@ -180,7 +196,7 @@
const radarData = {
indicator: props.radar,
nameGap: 5, // 文字距离
- radius: '75%', // 图比例大小
+ radius: '55%', // 图比例大小
axisName: {
color: '#a1cfd1',
},
diff --git a/src/layouts/components/Tools/index.vue b/src/layouts/components/Tools/index.vue
index 9f69900..a735a1f 100644
--- a/src/layouts/components/Tools/index.vue
+++ b/src/layouts/components/Tools/index.vue
@@ -123,7 +123,7 @@
// 连接 websocket
// websocket.initWebSocket()
systemType.value = window.localStorage.getItem('systemType') as string
- fetchMultiTenantList()
+ fetchMultiTenantList() // 获取租户权限列表
})
onBeforeMount(() => {
// 断开 websocket
diff --git a/src/main.ts b/src/main.ts
index 4ecdd30..99cbb9e 100644
--- a/src/main.ts
+++ b/src/main.ts
@@ -52,6 +52,9 @@
window.localStorage.setItem('gmStopLoinPage', result.data.gmStopLoinPage)
// 使用jeccibuca的版本
window.localStorage.setItem('jessibucaVersion', result.data.jessibucaVersion)
+ // 硬解码还是软解码
+ window.localStorage.setItem('useMSE', result.data.useMSE)
+
window.localStorage.setItem('zoom', result.data.zoom)
const app = createApp(App)
diff --git a/src/router/modules/monitor.ts b/src/router/modules/monitor.ts
index 5d45895..f5f0190 100644
--- a/src/router/modules/monitor.ts
+++ b/src/router/modules/monitor.ts
@@ -22,8 +22,8 @@
// import('@/views/monitor/realTime/index-noPlugin-single.vue'), // SDK单路
// import('@/views/monitor/realTime/index-noPlugin.vue'), // SDK4路
// import('@/views/monitor/realTime/index-isc-single.vue'), // isc
- import('@/views/monitor/realTime/index-media-single.vue'), // 商流媒体单路
- // import('@/views/monitor/realTime/index-new-gm-plugin.vue'), // 国
+ // import('@/views/monitor/realTime/index-media-single.vue'), // 商流媒体单路
+ import('@/views/monitor/realTime/index-new-gm-plugin.vue'), // 国
meta: {
title: '实时监控',
auth: '/realTime',
diff --git a/src/router/modules/system.ts b/src/router/modules/system.ts
index 98d33ba..0e778b5 100644
--- a/src/router/modules/system.ts
+++ b/src/router/modules/system.ts
@@ -229,7 +229,7 @@
{
path: 'list',
name: 'loginDiaryList',
- component: () => import('@/views/system/log/LoginLog.vue'),
+ component: () => import('@/views/system/log/loginLog.vue'),
meta: {
title: '登录日志',
auth: '/sys/loginLog',
@@ -265,6 +265,31 @@
},
],
},
+ {
+ path: '/multiTenant',
+ component: Layout,
+ redirect: '/multiTenant/index',
+ name: 'MultiTenant',
+ meta: {
+ title: '租户管理',
+ icon: 'ep:key',
+ auth: '/sys/multiTenant',
+ },
+ children: [
+ {
+ path: 'index',
+ name: 'MultiTenantIndex',
+ component: () => import('@/views/system/multiTenant/index.vue'),
+ meta: {
+ title: '租户管理',
+ auth: '/sys/multiTenant',
+ sidebar: false,
+ breadcrumb: false,
+ activeMenu: '/bsConfig',
+ },
+ },
+ ],
+ },
// ],
// },
]
diff --git a/src/views/alarm/securityAlarm/list.vue b/src/views/alarm/securityAlarm/list.vue
index be418fc..7c545eb 100644
--- a/src/views/alarm/securityAlarm/list.vue
+++ b/src/views/alarm/securityAlarm/list.vue
@@ -2,8 +2,10 @@
diff --git a/20250026.zip b/20250026.zip
deleted file mode 100644
index 891fee8..0000000
--- a/20250026.zip
+++ /dev/null
Binary files differ
diff --git a/public/config/config.json b/public/config/config.json
index 8882269..6aa50b7 100644
--- a/public/config/config.json
+++ b/public/config/config.json
@@ -19,5 +19,6 @@
"preventReclick": 2000,
"gmStopLoinPage": "0",
"jessibucaDec": "这是下面jessibuca字段的描述:pro代表使用Pro版本,open代表使用开源版本",
- "jessibucaVersion": "pro"
+ "jessibucaVersion": "pro",
+ "useMSE": "false"
}
diff --git a/src/api/system/multiTenant.ts b/src/api/system/multiTenant.ts
index 43ae886..1789858 100644
--- a/src/api/system/multiTenant.ts
+++ b/src/api/system/multiTenant.ts
@@ -13,6 +13,15 @@
})
}
+// 租户分页
+export function getTenantList(data: { keywords?: string; tenantName?: string }) {
+ return request({
+ url: `${prefix}/tenant/list`,
+ method: 'get',
+ params: data,
+ })
+}
+
// 租户设定
export function multiTenantConfig(data: { tenantId: string }) {
return request({
@@ -21,3 +30,38 @@
params: data,
})
}
+
+// 删除
+export function delTenant(data: { tenantId: string }) {
+ return request({
+ url: `${prefix}/tenant/delete`,
+ method: 'post',
+ params: data,
+ })
+}
+
+// 新增
+export function addTenant(data: Object) {
+ return request({
+ url: `${prefix}/tenant/add`,
+ method: 'post',
+ data,
+ })
+}
+
+// 编辑
+export function editTenant(data: Object) {
+ return request({
+ url: `${prefix}/tenant/update`,
+ method: 'post',
+ data,
+ })
+}
+
+// 新增
+export function detailTenant(data: { tenantId: string }) {
+ return request({
+ url: `${prefix}/tenant/detail/${data.tenantId}`,
+ method: 'get',
+ })
+}
diff --git a/src/assets/icons/icon-tenant-manage.svg b/src/assets/icons/icon-tenant-manage.svg
new file mode 100644
index 0000000..8fc82fa
--- /dev/null
+++ b/src/assets/icons/icon-tenant-manage.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/components/Echart/radarChart.vue b/src/components/Echart/radarChart.vue
index ab0f398..5cf9832 100644
--- a/src/components/Echart/radarChart.vue
+++ b/src/components/Echart/radarChart.vue
@@ -48,6 +48,21 @@
},
},
/**
+ * 网格配置
+ */
+ grid: {
+ type: Object,
+ default: () => {
+ return {
+ top: 0,
+ left: '15%',
+ right: '50%',
+ bottom: 50,
+ containLabel: true, // 是否包含坐标轴的刻度标签
+ }
+ },
+ },
+ /**
* 图表宽
*/
width: {
@@ -127,6 +142,7 @@
const option: any = {
title: [{ text: props.title }],
legend: props.legend, // 图例
+ grid: props.grid, // 网格
tooltip: {
show: true,
confine: true, // 是否限制提示框在图表范围内
@@ -180,7 +196,7 @@
const radarData = {
indicator: props.radar,
nameGap: 5, // 文字距离
- radius: '75%', // 图比例大小
+ radius: '55%', // 图比例大小
axisName: {
color: '#a1cfd1',
},
diff --git a/src/layouts/components/Tools/index.vue b/src/layouts/components/Tools/index.vue
index 9f69900..a735a1f 100644
--- a/src/layouts/components/Tools/index.vue
+++ b/src/layouts/components/Tools/index.vue
@@ -123,7 +123,7 @@
// 连接 websocket
// websocket.initWebSocket()
systemType.value = window.localStorage.getItem('systemType') as string
- fetchMultiTenantList()
+ fetchMultiTenantList() // 获取租户权限列表
})
onBeforeMount(() => {
// 断开 websocket
diff --git a/src/main.ts b/src/main.ts
index 4ecdd30..99cbb9e 100644
--- a/src/main.ts
+++ b/src/main.ts
@@ -52,6 +52,9 @@
window.localStorage.setItem('gmStopLoinPage', result.data.gmStopLoinPage)
// 使用jeccibuca的版本
window.localStorage.setItem('jessibucaVersion', result.data.jessibucaVersion)
+ // 硬解码还是软解码
+ window.localStorage.setItem('useMSE', result.data.useMSE)
+
window.localStorage.setItem('zoom', result.data.zoom)
const app = createApp(App)
diff --git a/src/router/modules/monitor.ts b/src/router/modules/monitor.ts
index 5d45895..f5f0190 100644
--- a/src/router/modules/monitor.ts
+++ b/src/router/modules/monitor.ts
@@ -22,8 +22,8 @@
// import('@/views/monitor/realTime/index-noPlugin-single.vue'), // SDK单路
// import('@/views/monitor/realTime/index-noPlugin.vue'), // SDK4路
// import('@/views/monitor/realTime/index-isc-single.vue'), // isc
- import('@/views/monitor/realTime/index-media-single.vue'), // 商流媒体单路
- // import('@/views/monitor/realTime/index-new-gm-plugin.vue'), // 国
+ // import('@/views/monitor/realTime/index-media-single.vue'), // 商流媒体单路
+ import('@/views/monitor/realTime/index-new-gm-plugin.vue'), // 国
meta: {
title: '实时监控',
auth: '/realTime',
diff --git a/src/router/modules/system.ts b/src/router/modules/system.ts
index 98d33ba..0e778b5 100644
--- a/src/router/modules/system.ts
+++ b/src/router/modules/system.ts
@@ -229,7 +229,7 @@
{
path: 'list',
name: 'loginDiaryList',
- component: () => import('@/views/system/log/LoginLog.vue'),
+ component: () => import('@/views/system/log/loginLog.vue'),
meta: {
title: '登录日志',
auth: '/sys/loginLog',
@@ -265,6 +265,31 @@
},
],
},
+ {
+ path: '/multiTenant',
+ component: Layout,
+ redirect: '/multiTenant/index',
+ name: 'MultiTenant',
+ meta: {
+ title: '租户管理',
+ icon: 'ep:key',
+ auth: '/sys/multiTenant',
+ },
+ children: [
+ {
+ path: 'index',
+ name: 'MultiTenantIndex',
+ component: () => import('@/views/system/multiTenant/index.vue'),
+ meta: {
+ title: '租户管理',
+ auth: '/sys/multiTenant',
+ sidebar: false,
+ breadcrumb: false,
+ activeMenu: '/bsConfig',
+ },
+ },
+ ],
+ },
// ],
// },
]
diff --git a/src/views/alarm/securityAlarm/list.vue b/src/views/alarm/securityAlarm/list.vue
index be418fc..7c545eb 100644
--- a/src/views/alarm/securityAlarm/list.vue
+++ b/src/views/alarm/securityAlarm/list.vue
@@ -2,8 +2,10 @@
diff --git a/src/views/system/log/loginLog.vue b/src/views/system/log/loginLog.vue
index e859af2..c24f27c 100644
--- a/src/views/system/log/loginLog.vue
+++ b/src/views/system/log/loginLog.vue
@@ -49,8 +49,6 @@
// 获取日志数据
const fetchData = (isNowPage = true) => {
- listQuery.beginTime = timeRange.value[0]
- listQuery.endTime = timeRange.value[1]
listLoading.value = true
if (!isNowPage) {
// 是否显示当前页,否则跳转第一页
@@ -135,6 +133,18 @@
}
loading.close()
}
+
+// 时间变更
+watch(timeRange, (val) => {
+ if (val) {
+ listQuery.beginTime = `${val[0]}`
+ listQuery.endTime = `${val[1]}`
+ }
+ else {
+ listQuery.beginTime = ''
+ listQuery.endTime = ''
+ }
+})
diff --git a/20250026.zip b/20250026.zip
deleted file mode 100644
index 891fee8..0000000
--- a/20250026.zip
+++ /dev/null
Binary files differ
diff --git a/public/config/config.json b/public/config/config.json
index 8882269..6aa50b7 100644
--- a/public/config/config.json
+++ b/public/config/config.json
@@ -19,5 +19,6 @@
"preventReclick": 2000,
"gmStopLoinPage": "0",
"jessibucaDec": "这是下面jessibuca字段的描述:pro代表使用Pro版本,open代表使用开源版本",
- "jessibucaVersion": "pro"
+ "jessibucaVersion": "pro",
+ "useMSE": "false"
}
diff --git a/src/api/system/multiTenant.ts b/src/api/system/multiTenant.ts
index 43ae886..1789858 100644
--- a/src/api/system/multiTenant.ts
+++ b/src/api/system/multiTenant.ts
@@ -13,6 +13,15 @@
})
}
+// 租户分页
+export function getTenantList(data: { keywords?: string; tenantName?: string }) {
+ return request({
+ url: `${prefix}/tenant/list`,
+ method: 'get',
+ params: data,
+ })
+}
+
// 租户设定
export function multiTenantConfig(data: { tenantId: string }) {
return request({
@@ -21,3 +30,38 @@
params: data,
})
}
+
+// 删除
+export function delTenant(data: { tenantId: string }) {
+ return request({
+ url: `${prefix}/tenant/delete`,
+ method: 'post',
+ params: data,
+ })
+}
+
+// 新增
+export function addTenant(data: Object) {
+ return request({
+ url: `${prefix}/tenant/add`,
+ method: 'post',
+ data,
+ })
+}
+
+// 编辑
+export function editTenant(data: Object) {
+ return request({
+ url: `${prefix}/tenant/update`,
+ method: 'post',
+ data,
+ })
+}
+
+// 新增
+export function detailTenant(data: { tenantId: string }) {
+ return request({
+ url: `${prefix}/tenant/detail/${data.tenantId}`,
+ method: 'get',
+ })
+}
diff --git a/src/assets/icons/icon-tenant-manage.svg b/src/assets/icons/icon-tenant-manage.svg
new file mode 100644
index 0000000..8fc82fa
--- /dev/null
+++ b/src/assets/icons/icon-tenant-manage.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/components/Echart/radarChart.vue b/src/components/Echart/radarChart.vue
index ab0f398..5cf9832 100644
--- a/src/components/Echart/radarChart.vue
+++ b/src/components/Echart/radarChart.vue
@@ -48,6 +48,21 @@
},
},
/**
+ * 网格配置
+ */
+ grid: {
+ type: Object,
+ default: () => {
+ return {
+ top: 0,
+ left: '15%',
+ right: '50%',
+ bottom: 50,
+ containLabel: true, // 是否包含坐标轴的刻度标签
+ }
+ },
+ },
+ /**
* 图表宽
*/
width: {
@@ -127,6 +142,7 @@
const option: any = {
title: [{ text: props.title }],
legend: props.legend, // 图例
+ grid: props.grid, // 网格
tooltip: {
show: true,
confine: true, // 是否限制提示框在图表范围内
@@ -180,7 +196,7 @@
const radarData = {
indicator: props.radar,
nameGap: 5, // 文字距离
- radius: '75%', // 图比例大小
+ radius: '55%', // 图比例大小
axisName: {
color: '#a1cfd1',
},
diff --git a/src/layouts/components/Tools/index.vue b/src/layouts/components/Tools/index.vue
index 9f69900..a735a1f 100644
--- a/src/layouts/components/Tools/index.vue
+++ b/src/layouts/components/Tools/index.vue
@@ -123,7 +123,7 @@
// 连接 websocket
// websocket.initWebSocket()
systemType.value = window.localStorage.getItem('systemType') as string
- fetchMultiTenantList()
+ fetchMultiTenantList() // 获取租户权限列表
})
onBeforeMount(() => {
// 断开 websocket
diff --git a/src/main.ts b/src/main.ts
index 4ecdd30..99cbb9e 100644
--- a/src/main.ts
+++ b/src/main.ts
@@ -52,6 +52,9 @@
window.localStorage.setItem('gmStopLoinPage', result.data.gmStopLoinPage)
// 使用jeccibuca的版本
window.localStorage.setItem('jessibucaVersion', result.data.jessibucaVersion)
+ // 硬解码还是软解码
+ window.localStorage.setItem('useMSE', result.data.useMSE)
+
window.localStorage.setItem('zoom', result.data.zoom)
const app = createApp(App)
diff --git a/src/router/modules/monitor.ts b/src/router/modules/monitor.ts
index 5d45895..f5f0190 100644
--- a/src/router/modules/monitor.ts
+++ b/src/router/modules/monitor.ts
@@ -22,8 +22,8 @@
// import('@/views/monitor/realTime/index-noPlugin-single.vue'), // SDK单路
// import('@/views/monitor/realTime/index-noPlugin.vue'), // SDK4路
// import('@/views/monitor/realTime/index-isc-single.vue'), // isc
- import('@/views/monitor/realTime/index-media-single.vue'), // 商流媒体单路
- // import('@/views/monitor/realTime/index-new-gm-plugin.vue'), // 国
+ // import('@/views/monitor/realTime/index-media-single.vue'), // 商流媒体单路
+ import('@/views/monitor/realTime/index-new-gm-plugin.vue'), // 国
meta: {
title: '实时监控',
auth: '/realTime',
diff --git a/src/router/modules/system.ts b/src/router/modules/system.ts
index 98d33ba..0e778b5 100644
--- a/src/router/modules/system.ts
+++ b/src/router/modules/system.ts
@@ -229,7 +229,7 @@
{
path: 'list',
name: 'loginDiaryList',
- component: () => import('@/views/system/log/LoginLog.vue'),
+ component: () => import('@/views/system/log/loginLog.vue'),
meta: {
title: '登录日志',
auth: '/sys/loginLog',
@@ -265,6 +265,31 @@
},
],
},
+ {
+ path: '/multiTenant',
+ component: Layout,
+ redirect: '/multiTenant/index',
+ name: 'MultiTenant',
+ meta: {
+ title: '租户管理',
+ icon: 'ep:key',
+ auth: '/sys/multiTenant',
+ },
+ children: [
+ {
+ path: 'index',
+ name: 'MultiTenantIndex',
+ component: () => import('@/views/system/multiTenant/index.vue'),
+ meta: {
+ title: '租户管理',
+ auth: '/sys/multiTenant',
+ sidebar: false,
+ breadcrumb: false,
+ activeMenu: '/bsConfig',
+ },
+ },
+ ],
+ },
// ],
// },
]
diff --git a/src/views/alarm/securityAlarm/list.vue b/src/views/alarm/securityAlarm/list.vue
index be418fc..7c545eb 100644
--- a/src/views/alarm/securityAlarm/list.vue
+++ b/src/views/alarm/securityAlarm/list.vue
@@ -2,8 +2,10 @@
diff --git a/src/views/system/log/loginLog.vue b/src/views/system/log/loginLog.vue
index e859af2..c24f27c 100644
--- a/src/views/system/log/loginLog.vue
+++ b/src/views/system/log/loginLog.vue
@@ -49,8 +49,6 @@
// 获取日志数据
const fetchData = (isNowPage = true) => {
- listQuery.beginTime = timeRange.value[0]
- listQuery.endTime = timeRange.value[1]
listLoading.value = true
if (!isNowPage) {
// 是否显示当前页,否则跳转第一页
@@ -135,6 +133,18 @@
}
loading.close()
}
+
+// 时间变更
+watch(timeRange, (val) => {
+ if (val) {
+ listQuery.beginTime = `${val[0]}`
+ listQuery.endTime = `${val[1]}`
+ }
+ else {
+ listQuery.beginTime = ''
+ listQuery.endTime = ''
+ }
+})
diff --git a/src/views/system/multiTenant/editDialog.vue b/src/views/system/multiTenant/editDialog.vue
new file mode 100644
index 0000000..6409385
--- /dev/null
+++ b/src/views/system/multiTenant/editDialog.vue
@@ -0,0 +1,224 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/20250026.zip b/20250026.zip
deleted file mode 100644
index 891fee8..0000000
--- a/20250026.zip
+++ /dev/null
Binary files differ
diff --git a/public/config/config.json b/public/config/config.json
index 8882269..6aa50b7 100644
--- a/public/config/config.json
+++ b/public/config/config.json
@@ -19,5 +19,6 @@
"preventReclick": 2000,
"gmStopLoinPage": "0",
"jessibucaDec": "这是下面jessibuca字段的描述:pro代表使用Pro版本,open代表使用开源版本",
- "jessibucaVersion": "pro"
+ "jessibucaVersion": "pro",
+ "useMSE": "false"
}
diff --git a/src/api/system/multiTenant.ts b/src/api/system/multiTenant.ts
index 43ae886..1789858 100644
--- a/src/api/system/multiTenant.ts
+++ b/src/api/system/multiTenant.ts
@@ -13,6 +13,15 @@
})
}
+// 租户分页
+export function getTenantList(data: { keywords?: string; tenantName?: string }) {
+ return request({
+ url: `${prefix}/tenant/list`,
+ method: 'get',
+ params: data,
+ })
+}
+
// 租户设定
export function multiTenantConfig(data: { tenantId: string }) {
return request({
@@ -21,3 +30,38 @@
params: data,
})
}
+
+// 删除
+export function delTenant(data: { tenantId: string }) {
+ return request({
+ url: `${prefix}/tenant/delete`,
+ method: 'post',
+ params: data,
+ })
+}
+
+// 新增
+export function addTenant(data: Object) {
+ return request({
+ url: `${prefix}/tenant/add`,
+ method: 'post',
+ data,
+ })
+}
+
+// 编辑
+export function editTenant(data: Object) {
+ return request({
+ url: `${prefix}/tenant/update`,
+ method: 'post',
+ data,
+ })
+}
+
+// 新增
+export function detailTenant(data: { tenantId: string }) {
+ return request({
+ url: `${prefix}/tenant/detail/${data.tenantId}`,
+ method: 'get',
+ })
+}
diff --git a/src/assets/icons/icon-tenant-manage.svg b/src/assets/icons/icon-tenant-manage.svg
new file mode 100644
index 0000000..8fc82fa
--- /dev/null
+++ b/src/assets/icons/icon-tenant-manage.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/components/Echart/radarChart.vue b/src/components/Echart/radarChart.vue
index ab0f398..5cf9832 100644
--- a/src/components/Echart/radarChart.vue
+++ b/src/components/Echart/radarChart.vue
@@ -48,6 +48,21 @@
},
},
/**
+ * 网格配置
+ */
+ grid: {
+ type: Object,
+ default: () => {
+ return {
+ top: 0,
+ left: '15%',
+ right: '50%',
+ bottom: 50,
+ containLabel: true, // 是否包含坐标轴的刻度标签
+ }
+ },
+ },
+ /**
* 图表宽
*/
width: {
@@ -127,6 +142,7 @@
const option: any = {
title: [{ text: props.title }],
legend: props.legend, // 图例
+ grid: props.grid, // 网格
tooltip: {
show: true,
confine: true, // 是否限制提示框在图表范围内
@@ -180,7 +196,7 @@
const radarData = {
indicator: props.radar,
nameGap: 5, // 文字距离
- radius: '75%', // 图比例大小
+ radius: '55%', // 图比例大小
axisName: {
color: '#a1cfd1',
},
diff --git a/src/layouts/components/Tools/index.vue b/src/layouts/components/Tools/index.vue
index 9f69900..a735a1f 100644
--- a/src/layouts/components/Tools/index.vue
+++ b/src/layouts/components/Tools/index.vue
@@ -123,7 +123,7 @@
// 连接 websocket
// websocket.initWebSocket()
systemType.value = window.localStorage.getItem('systemType') as string
- fetchMultiTenantList()
+ fetchMultiTenantList() // 获取租户权限列表
})
onBeforeMount(() => {
// 断开 websocket
diff --git a/src/main.ts b/src/main.ts
index 4ecdd30..99cbb9e 100644
--- a/src/main.ts
+++ b/src/main.ts
@@ -52,6 +52,9 @@
window.localStorage.setItem('gmStopLoinPage', result.data.gmStopLoinPage)
// 使用jeccibuca的版本
window.localStorage.setItem('jessibucaVersion', result.data.jessibucaVersion)
+ // 硬解码还是软解码
+ window.localStorage.setItem('useMSE', result.data.useMSE)
+
window.localStorage.setItem('zoom', result.data.zoom)
const app = createApp(App)
diff --git a/src/router/modules/monitor.ts b/src/router/modules/monitor.ts
index 5d45895..f5f0190 100644
--- a/src/router/modules/monitor.ts
+++ b/src/router/modules/monitor.ts
@@ -22,8 +22,8 @@
// import('@/views/monitor/realTime/index-noPlugin-single.vue'), // SDK单路
// import('@/views/monitor/realTime/index-noPlugin.vue'), // SDK4路
// import('@/views/monitor/realTime/index-isc-single.vue'), // isc
- import('@/views/monitor/realTime/index-media-single.vue'), // 商流媒体单路
- // import('@/views/monitor/realTime/index-new-gm-plugin.vue'), // 国
+ // import('@/views/monitor/realTime/index-media-single.vue'), // 商流媒体单路
+ import('@/views/monitor/realTime/index-new-gm-plugin.vue'), // 国
meta: {
title: '实时监控',
auth: '/realTime',
diff --git a/src/router/modules/system.ts b/src/router/modules/system.ts
index 98d33ba..0e778b5 100644
--- a/src/router/modules/system.ts
+++ b/src/router/modules/system.ts
@@ -229,7 +229,7 @@
{
path: 'list',
name: 'loginDiaryList',
- component: () => import('@/views/system/log/LoginLog.vue'),
+ component: () => import('@/views/system/log/loginLog.vue'),
meta: {
title: '登录日志',
auth: '/sys/loginLog',
@@ -265,6 +265,31 @@
},
],
},
+ {
+ path: '/multiTenant',
+ component: Layout,
+ redirect: '/multiTenant/index',
+ name: 'MultiTenant',
+ meta: {
+ title: '租户管理',
+ icon: 'ep:key',
+ auth: '/sys/multiTenant',
+ },
+ children: [
+ {
+ path: 'index',
+ name: 'MultiTenantIndex',
+ component: () => import('@/views/system/multiTenant/index.vue'),
+ meta: {
+ title: '租户管理',
+ auth: '/sys/multiTenant',
+ sidebar: false,
+ breadcrumb: false,
+ activeMenu: '/bsConfig',
+ },
+ },
+ ],
+ },
// ],
// },
]
diff --git a/src/views/alarm/securityAlarm/list.vue b/src/views/alarm/securityAlarm/list.vue
index be418fc..7c545eb 100644
--- a/src/views/alarm/securityAlarm/list.vue
+++ b/src/views/alarm/securityAlarm/list.vue
@@ -2,8 +2,10 @@
diff --git a/src/views/system/log/loginLog.vue b/src/views/system/log/loginLog.vue
index e859af2..c24f27c 100644
--- a/src/views/system/log/loginLog.vue
+++ b/src/views/system/log/loginLog.vue
@@ -49,8 +49,6 @@
// 获取日志数据
const fetchData = (isNowPage = true) => {
- listQuery.beginTime = timeRange.value[0]
- listQuery.endTime = timeRange.value[1]
listLoading.value = true
if (!isNowPage) {
// 是否显示当前页,否则跳转第一页
@@ -135,6 +133,18 @@
}
loading.close()
}
+
+// 时间变更
+watch(timeRange, (val) => {
+ if (val) {
+ listQuery.beginTime = `${val[0]}`
+ listQuery.endTime = `${val[1]}`
+ }
+ else {
+ listQuery.beginTime = ''
+ listQuery.endTime = ''
+ }
+})
diff --git a/src/views/system/multiTenant/editDialog.vue b/src/views/system/multiTenant/editDialog.vue
new file mode 100644
index 0000000..6409385
--- /dev/null
+++ b/src/views/system/multiTenant/editDialog.vue
@@ -0,0 +1,224 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/system/multiTenant/index.vue b/src/views/system/multiTenant/index.vue
new file mode 100644
index 0000000..5f3737f
--- /dev/null
+++ b/src/views/system/multiTenant/index.vue
@@ -0,0 +1,133 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 详情
+
+
+ 编辑
+
+
+ 删除
+
+
+
+
+
+
+
+
+
diff --git a/20250026.zip b/20250026.zip
deleted file mode 100644
index 891fee8..0000000
--- a/20250026.zip
+++ /dev/null
Binary files differ
diff --git a/public/config/config.json b/public/config/config.json
index 8882269..6aa50b7 100644
--- a/public/config/config.json
+++ b/public/config/config.json
@@ -19,5 +19,6 @@
"preventReclick": 2000,
"gmStopLoinPage": "0",
"jessibucaDec": "这是下面jessibuca字段的描述:pro代表使用Pro版本,open代表使用开源版本",
- "jessibucaVersion": "pro"
+ "jessibucaVersion": "pro",
+ "useMSE": "false"
}
diff --git a/src/api/system/multiTenant.ts b/src/api/system/multiTenant.ts
index 43ae886..1789858 100644
--- a/src/api/system/multiTenant.ts
+++ b/src/api/system/multiTenant.ts
@@ -13,6 +13,15 @@
})
}
+// 租户分页
+export function getTenantList(data: { keywords?: string; tenantName?: string }) {
+ return request({
+ url: `${prefix}/tenant/list`,
+ method: 'get',
+ params: data,
+ })
+}
+
// 租户设定
export function multiTenantConfig(data: { tenantId: string }) {
return request({
@@ -21,3 +30,38 @@
params: data,
})
}
+
+// 删除
+export function delTenant(data: { tenantId: string }) {
+ return request({
+ url: `${prefix}/tenant/delete`,
+ method: 'post',
+ params: data,
+ })
+}
+
+// 新增
+export function addTenant(data: Object) {
+ return request({
+ url: `${prefix}/tenant/add`,
+ method: 'post',
+ data,
+ })
+}
+
+// 编辑
+export function editTenant(data: Object) {
+ return request({
+ url: `${prefix}/tenant/update`,
+ method: 'post',
+ data,
+ })
+}
+
+// 新增
+export function detailTenant(data: { tenantId: string }) {
+ return request({
+ url: `${prefix}/tenant/detail/${data.tenantId}`,
+ method: 'get',
+ })
+}
diff --git a/src/assets/icons/icon-tenant-manage.svg b/src/assets/icons/icon-tenant-manage.svg
new file mode 100644
index 0000000..8fc82fa
--- /dev/null
+++ b/src/assets/icons/icon-tenant-manage.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/components/Echart/radarChart.vue b/src/components/Echart/radarChart.vue
index ab0f398..5cf9832 100644
--- a/src/components/Echart/radarChart.vue
+++ b/src/components/Echart/radarChart.vue
@@ -48,6 +48,21 @@
},
},
/**
+ * 网格配置
+ */
+ grid: {
+ type: Object,
+ default: () => {
+ return {
+ top: 0,
+ left: '15%',
+ right: '50%',
+ bottom: 50,
+ containLabel: true, // 是否包含坐标轴的刻度标签
+ }
+ },
+ },
+ /**
* 图表宽
*/
width: {
@@ -127,6 +142,7 @@
const option: any = {
title: [{ text: props.title }],
legend: props.legend, // 图例
+ grid: props.grid, // 网格
tooltip: {
show: true,
confine: true, // 是否限制提示框在图表范围内
@@ -180,7 +196,7 @@
const radarData = {
indicator: props.radar,
nameGap: 5, // 文字距离
- radius: '75%', // 图比例大小
+ radius: '55%', // 图比例大小
axisName: {
color: '#a1cfd1',
},
diff --git a/src/layouts/components/Tools/index.vue b/src/layouts/components/Tools/index.vue
index 9f69900..a735a1f 100644
--- a/src/layouts/components/Tools/index.vue
+++ b/src/layouts/components/Tools/index.vue
@@ -123,7 +123,7 @@
// 连接 websocket
// websocket.initWebSocket()
systemType.value = window.localStorage.getItem('systemType') as string
- fetchMultiTenantList()
+ fetchMultiTenantList() // 获取租户权限列表
})
onBeforeMount(() => {
// 断开 websocket
diff --git a/src/main.ts b/src/main.ts
index 4ecdd30..99cbb9e 100644
--- a/src/main.ts
+++ b/src/main.ts
@@ -52,6 +52,9 @@
window.localStorage.setItem('gmStopLoinPage', result.data.gmStopLoinPage)
// 使用jeccibuca的版本
window.localStorage.setItem('jessibucaVersion', result.data.jessibucaVersion)
+ // 硬解码还是软解码
+ window.localStorage.setItem('useMSE', result.data.useMSE)
+
window.localStorage.setItem('zoom', result.data.zoom)
const app = createApp(App)
diff --git a/src/router/modules/monitor.ts b/src/router/modules/monitor.ts
index 5d45895..f5f0190 100644
--- a/src/router/modules/monitor.ts
+++ b/src/router/modules/monitor.ts
@@ -22,8 +22,8 @@
// import('@/views/monitor/realTime/index-noPlugin-single.vue'), // SDK单路
// import('@/views/monitor/realTime/index-noPlugin.vue'), // SDK4路
// import('@/views/monitor/realTime/index-isc-single.vue'), // isc
- import('@/views/monitor/realTime/index-media-single.vue'), // 商流媒体单路
- // import('@/views/monitor/realTime/index-new-gm-plugin.vue'), // 国
+ // import('@/views/monitor/realTime/index-media-single.vue'), // 商流媒体单路
+ import('@/views/monitor/realTime/index-new-gm-plugin.vue'), // 国
meta: {
title: '实时监控',
auth: '/realTime',
diff --git a/src/router/modules/system.ts b/src/router/modules/system.ts
index 98d33ba..0e778b5 100644
--- a/src/router/modules/system.ts
+++ b/src/router/modules/system.ts
@@ -229,7 +229,7 @@
{
path: 'list',
name: 'loginDiaryList',
- component: () => import('@/views/system/log/LoginLog.vue'),
+ component: () => import('@/views/system/log/loginLog.vue'),
meta: {
title: '登录日志',
auth: '/sys/loginLog',
@@ -265,6 +265,31 @@
},
],
},
+ {
+ path: '/multiTenant',
+ component: Layout,
+ redirect: '/multiTenant/index',
+ name: 'MultiTenant',
+ meta: {
+ title: '租户管理',
+ icon: 'ep:key',
+ auth: '/sys/multiTenant',
+ },
+ children: [
+ {
+ path: 'index',
+ name: 'MultiTenantIndex',
+ component: () => import('@/views/system/multiTenant/index.vue'),
+ meta: {
+ title: '租户管理',
+ auth: '/sys/multiTenant',
+ sidebar: false,
+ breadcrumb: false,
+ activeMenu: '/bsConfig',
+ },
+ },
+ ],
+ },
// ],
// },
]
diff --git a/src/views/alarm/securityAlarm/list.vue b/src/views/alarm/securityAlarm/list.vue
index be418fc..7c545eb 100644
--- a/src/views/alarm/securityAlarm/list.vue
+++ b/src/views/alarm/securityAlarm/list.vue
@@ -2,8 +2,10 @@
diff --git a/src/views/system/log/loginLog.vue b/src/views/system/log/loginLog.vue
index e859af2..c24f27c 100644
--- a/src/views/system/log/loginLog.vue
+++ b/src/views/system/log/loginLog.vue
@@ -49,8 +49,6 @@
// 获取日志数据
const fetchData = (isNowPage = true) => {
- listQuery.beginTime = timeRange.value[0]
- listQuery.endTime = timeRange.value[1]
listLoading.value = true
if (!isNowPage) {
// 是否显示当前页,否则跳转第一页
@@ -135,6 +133,18 @@
}
loading.close()
}
+
+// 时间变更
+watch(timeRange, (val) => {
+ if (val) {
+ listQuery.beginTime = `${val[0]}`
+ listQuery.endTime = `${val[1]}`
+ }
+ else {
+ listQuery.beginTime = ''
+ listQuery.endTime = ''
+ }
+})
diff --git a/src/views/system/multiTenant/editDialog.vue b/src/views/system/multiTenant/editDialog.vue
new file mode 100644
index 0000000..6409385
--- /dev/null
+++ b/src/views/system/multiTenant/editDialog.vue
@@ -0,0 +1,224 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/system/multiTenant/index.vue b/src/views/system/multiTenant/index.vue
new file mode 100644
index 0000000..5f3737f
--- /dev/null
+++ b/src/views/system/multiTenant/index.vue
@@ -0,0 +1,133 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 详情
+
+
+ 编辑
+
+
+ 删除
+
+
+
+
+
+
+
+
+
diff --git a/src/views/system/multiTenant/multiTenant-interface.ts b/src/views/system/multiTenant/multiTenant-interface.ts
new file mode 100644
index 0000000..cdca31d
--- /dev/null
+++ b/src/views/system/multiTenant/multiTenant-interface.ts
@@ -0,0 +1,22 @@
+export interface IListQuery {
+ keywords: string
+ tenantName: string
+ offset: number
+ limit: number
+}
+
+export interface IList {
+ id: string // 主键
+ tenantCode: string // 租户代码
+ tenantName: string // 租户名称
+ linkPerson: string // 联系人
+ tel: string // 电话
+}
+
+export interface IForm {
+ id: string // 主键
+ tenantCode: string // 租户代码
+ tenantName: string // 租户名称
+ linkPerson: string // 联系人
+ tel: string // 电话
+}