feat: 文章标题链接使用正确H5 URL格式,域名从系统配置动态读取
This commit is contained in:
@@ -85,11 +85,12 @@
|
|||||||
<script setup>
|
<script setup>
|
||||||
import { ref, reactive, onMounted, onUnmounted } from 'vue'
|
import { ref, reactive, onMounted, onUnmounted } from 'vue'
|
||||||
import { ElMessage, ElMessageBox } from 'element-plus'
|
import { ElMessage, ElMessageBox } from 'element-plus'
|
||||||
import { getInteractions, retryInteraction, exportInteractions, cancelInteraction } from '@/api'
|
import { getInteractions, retryInteraction, exportInteractions, cancelInteraction , getSystemConfigs } from '@/api'
|
||||||
|
|
||||||
const records = ref([])
|
const records = ref([])
|
||||||
const total = ref(0)
|
const total = ref(0)
|
||||||
const loading = ref(false)
|
const loading = ref(false)
|
||||||
|
const articleBaseDomain = ref('https://fat-open.99hui.com') // 默认测试环境
|
||||||
const page = ref(1)
|
const page = ref(1)
|
||||||
const pageSize = ref(20)
|
const pageSize = ref(20)
|
||||||
const dateRange = ref(null)
|
const dateRange = ref(null)
|
||||||
@@ -104,9 +105,24 @@ function onDateChange(v) {
|
|||||||
load()
|
load()
|
||||||
}
|
}
|
||||||
|
|
||||||
// 构造文章详情页 URL
|
// 构造文章详情页 URL(H5 分享页面)
|
||||||
function getArticleUrl(articleId) {
|
function getArticleUrl(articleId) {
|
||||||
return `https://fat-open.99hui.com/api/huihuibusiness/news/open/${articleId}`
|
if (!articleId) return '#'
|
||||||
|
return `${articleBaseDomain.value}/huihui-h5/#/news/share?id=${articleId}&login=no`
|
||||||
|
}
|
||||||
|
|
||||||
|
// 从系统配置获取业务接口域名,用于拼接文章链接
|
||||||
|
async function loadArticleDomain() {
|
||||||
|
try {
|
||||||
|
const res = await getSystemConfigs()
|
||||||
|
const cfgs = res.data || []
|
||||||
|
const bizUrl = cfgs.find(c => c.config_key === 'news_platform_base_url')?.config_value || ''
|
||||||
|
if (bizUrl) {
|
||||||
|
// 从 https://99hui.com/api/huihuibusiness 提取 https://99hui.com
|
||||||
|
const parts = bizUrl.split('/')
|
||||||
|
if (parts.length >= 3) articleBaseDomain.value = parts[0] + '//' + parts[2]
|
||||||
|
}
|
||||||
|
} catch(e) {}
|
||||||
}
|
}
|
||||||
|
|
||||||
async function load() {
|
async function load() {
|
||||||
@@ -161,7 +177,11 @@ async function handleExport() {
|
|||||||
const a = document.createElement('a'); a.href = url; a.download = 'interactions.xlsx'; a.click()
|
const a = document.createElement('a'); a.href = url; a.download = 'interactions.xlsx'; a.click()
|
||||||
}
|
}
|
||||||
|
|
||||||
onMounted(() => { load(); window.addEventListener('page-refresh', load) })
|
onMounted(() => {
|
||||||
|
loadArticleDomain()
|
||||||
|
load()
|
||||||
|
window.addEventListener('page-refresh', load)
|
||||||
|
})
|
||||||
onUnmounted(() => window.removeEventListener('page-refresh', load))
|
onUnmounted(() => window.removeEventListener('page-refresh', load))
|
||||||
</script>
|
</script>
|
||||||
<style scoped>
|
<style scoped>
|
||||||
|
|||||||
Reference in New Issue
Block a user