feat(新页面): 管理员政策页

This commit is contained in:
hzj 2025-12-01 14:44:28 +08:00
parent 5e85d1bcf4
commit d152d4d6db
9 changed files with 84 additions and 3 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 688 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 683 KiB

View File

@ -300,5 +300,7 @@
"card_name": "اسم البطاقة",
"enter_card_name": "أدخل اسم البطاقة",
"enter_card_number": "أدخل رقم البطاقة",
"enter_payee": "أدخل اسم المستفيد"
"enter_payee": "أدخل اسم المستفيد",
"admin_policy": "سياسة المشرف"
}

View File

@ -300,5 +300,7 @@
"card_name": "Card Name",
"enter_card_name": "Enter the Card Name",
"enter_card_number": "Enter the Card Number",
"enter_payee": "Enter the payee"
"enter_payee": "Enter the payee",
"admin_policy": "Admin Policy"
}

View File

@ -300,5 +300,7 @@
"card_name": "卡名",
"enter_card_name": "请输入卡名",
"enter_card_number": "请输入卡号",
"enter_payee": "请输入收款人"
"enter_payee": "请输入收款人",
"admin_policy": "管理员政策"
}

View File

@ -365,6 +365,12 @@ const router = createRouter({
component: () => import('../views/Activities/Game/index.vue'),
meta: { requiresAuth: true },
},
{
path: '/admin-policy',
name: 'admin-policy',
component: () => import('../views/AdminCenter/policy.vue'),
meta: { requiresAuth: true },
},
],
})

View File

@ -99,6 +99,7 @@ export const ROLE_PERMISSIONS = {
'/my-BD-teams', //我的BD团队页面
'/my-agency-teams', //我的代理团队页面
'/my-recharge-agency', //我的金币代理团队页面
'/admin-policy', //管理员政策页面
],
// BD (商务拓展)

View File

@ -120,6 +120,7 @@
alt=""
style="display: block; width: 1.5em"
class="flipImg"
@click="gotoPolicy"
/>
</div>
@ -453,6 +454,11 @@ const gotoIncome = () => {
router.push({ path: '/available-income' })
}
//
const gotoPolicy = () => {
router.push({ path: '/admin-policy' })
}
//
const gotoPage = (path) => {
router.push({ path: path })

View File

@ -0,0 +1,62 @@
<template>
<div class="policy-container">
<!-- 顶部导航 -->
<GeneralHeader
:title="t('admin_policy')"
:backImg="imgUrl"
color="black"
style="box-shadow: 0 0 10px rgba(0, 0, 0, 0.1); z-index: 999"
/>
<img :src="policyImgUrl" alt="" style="display: block; width: 100vw; object-fit: cover" />
</div>
</template>
<script setup>
import { computed, onMounted, ref } from 'vue'
import { useI18n } from 'vue-i18n'
import { useLangStore } from '@/stores/lang'
import GeneralHeader from '@/components/GeneralHeader.vue'
const langStore = useLangStore()
const { t, locale } = useI18n()
//
const currentLangType = computed(() => {
return langStore.selectedLang?.type || 'en'
})
const policyImgUrl = ref('') //
const imgUrl = new URL('/src/assets/icon/arrowBackBlack.png', import.meta.url).href
const updateImages = () => {
if (currentLangType.value === 'en') {
policyImgUrl.value = new URL(
'/src/assets/images/AdminCenter/Policy/policy.png',
import.meta.url
).href
} else if (currentLangType.value === 'ar') {
policyImgUrl.value = new URL(
'/src/assets/images/AdminCenter/Policy/policyAr.png',
import.meta.url
).href
}
}
onMounted(() => {
updateImages()
})
</script>
<style lang="scss" scoped>
.policy-container {
height: 100vh;
background-image: url(../../assets/images/secondBg.png);
overflow-y: auto;
}
.policy-container::-webkit-scrollbar {
display: none;
}
</style>