替换Domain详情页的中文文本为英文
This commit is contained in:
parent
2881c0529e
commit
88b278499b
@ -6,7 +6,7 @@
|
||||
<div class="flex gap-2">
|
||||
<TextInput
|
||||
v-model="searchQuery"
|
||||
placeholder="搜索所有者姓名、单位名称..."
|
||||
:placeholder="$t('Search owner name, company name...')"
|
||||
class="flex-1"
|
||||
>
|
||||
<template #prefix>
|
||||
@ -17,9 +17,9 @@
|
||||
v-model="selectedStatus"
|
||||
class="rounded-lg border border-gray-300 px-3 py-2 text-sm focus:border-blue-500 focus:ring-1 focus:ring-blue-500"
|
||||
>
|
||||
<option value="">全部状态</option>
|
||||
<option value="1">已实名认证</option>
|
||||
<option value="0">未实名认证</option>
|
||||
<option value="">{{ $t('All Status') }}</option>
|
||||
<option value="1">{{ $t('Real-name Verified') }}</option>
|
||||
<option value="0">{{ $t('Not Real-name Verified') }}</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
@ -28,7 +28,7 @@
|
||||
@click="createDomainOwner"
|
||||
variant="solid"
|
||||
iconLeft="plus"
|
||||
label="新建所有者模板"
|
||||
:label="$t('Create Owner Template')"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
@ -37,16 +37,16 @@
|
||||
<div class="rounded-lg border border-gray-200 bg-white my-4">
|
||||
<!-- 表头 -->
|
||||
<div class="grid grid-cols-12 gap-4 border-b border-gray-200 bg-gray-50 px-6 py-3 text-sm font-medium text-gray-700">
|
||||
<div class="col-span-4">所有者名称</div>
|
||||
<div class="col-span-3">实名状态</div>
|
||||
<div class="col-span-3">联系信息</div>
|
||||
<div class="col-span-2">操作</div>
|
||||
<div class="col-span-4">{{ $t('Owner Name') }}</div>
|
||||
<div class="col-span-3">{{ $t('Real-name Status') }}</div>
|
||||
<div class="col-span-3">{{ $t('Contact Information') }}</div>
|
||||
<div class="col-span-2">{{ $t('Actions') }}</div>
|
||||
</div>
|
||||
|
||||
<!-- 加载状态 -->
|
||||
<div v-if="isLoading" class="flex items-center justify-center py-12">
|
||||
<Loader2Icon class="h-6 w-6 animate-spin text-gray-400" />
|
||||
<span class="ml-2 text-gray-600">加载中...</span>
|
||||
<span class="ml-2 text-gray-600">{{ $t('Loading...') }}</span>
|
||||
</div>
|
||||
|
||||
<!-- 错误状态 -->
|
||||
@ -58,8 +58,8 @@
|
||||
<!-- 空状态 -->
|
||||
<div v-else-if="filteredOwners.length === 0" class="flex flex-col items-center justify-center py-12 text-gray-500">
|
||||
<UsersIcon class="mb-4 h-12 w-12 text-gray-300" />
|
||||
<p class="text-lg font-medium">暂无所有者模板</p>
|
||||
<p class="text-sm">点击上方按钮创建第一个模板</p>
|
||||
<p class="text-lg font-medium">{{ $t('No owner templates yet') }}</p>
|
||||
<p class="text-sm">{{ $t('Click the button above to create your first template') }}</p>
|
||||
</div>
|
||||
|
||||
<!-- 数据列表 -->
|
||||
@ -93,7 +93,7 @@
|
||||
variant="ghost"
|
||||
size="sm"
|
||||
class="text-blue-600 hover:text-blue-700"
|
||||
title="查看详情"
|
||||
:title="$t('View Details')"
|
||||
>
|
||||
<EyeIcon class="h-4 w-4" />
|
||||
</Button>
|
||||
@ -102,7 +102,7 @@
|
||||
variant="ghost"
|
||||
size="sm"
|
||||
class="text-gray-600 hover:text-gray-700"
|
||||
title="编辑"
|
||||
:title="$t('Edit')"
|
||||
>
|
||||
<EditIcon class="h-4 w-4" />
|
||||
</Button>
|
||||
@ -116,7 +116,7 @@
|
||||
? 'text-gray-400 cursor-not-allowed'
|
||||
: 'text-red-600 hover:text-red-700'
|
||||
]"
|
||||
:title="isTemplateUsed(owner) ? '该模板已关联域名,无法删除' : '删除'"
|
||||
:title="isTemplateUsed(owner) ? $t('This template is associated with domains and cannot be deleted') : $t('Delete')"
|
||||
>
|
||||
<Trash2Icon class="h-4 w-4" />
|
||||
</Button>
|
||||
@ -128,9 +128,9 @@
|
||||
<!-- 分页 -->
|
||||
<div v-if="pagination.total > pagination.limit" class="flex flex-col items-center space-y-4">
|
||||
<div class="text-sm text-gray-700">
|
||||
显示第 {{ (pagination.pageno - 1) * pagination.limit + 1 }} -
|
||||
{{ Math.min(pagination.pageno * pagination.limit, pagination.total) }} 条,
|
||||
共 {{ pagination.total }} 条记录
|
||||
{{ $t('Showing') }} {{ (pagination.pageno - 1) * pagination.limit + 1 }} -
|
||||
{{ Math.min(pagination.pageno * pagination.limit, pagination.total) }} {{ $t('of') }}
|
||||
{{ pagination.total }} {{ $t('records') }}
|
||||
</div>
|
||||
<div class="flex items-center space-x-2">
|
||||
<Button
|
||||
@ -185,7 +185,7 @@
|
||||
<!-- 标题栏 -->
|
||||
<div class="p-4 border-b border-gray-200 bg-white rounded-t-lg flex-shrink-0">
|
||||
<div class="flex items-center justify-between">
|
||||
<h3 class="text-lg font-medium text-gray-900">所有者详细信息</h3>
|
||||
<h3 class="text-lg font-medium text-gray-900">{{ $t('Owner Details') }}</h3>
|
||||
<button
|
||||
@click="closeDetailDialog"
|
||||
class="text-gray-400 hover:text-gray-600 transition-colors duration-200"
|
||||
@ -202,22 +202,22 @@
|
||||
<div class="space-y-6">
|
||||
<!-- 基本信息 -->
|
||||
<div>
|
||||
<h4 class="text-base font-medium text-gray-900 mb-4">基本信息</h4>
|
||||
<h4 class="text-base font-medium text-gray-900 mb-4">{{ $t('Basic Information') }}</h4>
|
||||
<div class="grid grid-cols-2 gap-4">
|
||||
<div>
|
||||
<label class="block text-sm font-medium text-gray-700">所有者类型</label>
|
||||
<label class="block text-sm font-medium text-gray-700">{{ $t('Owner Type') }}</label>
|
||||
<p class="mt-1 text-sm text-gray-900">{{ getOwnerTypeText(selectedOwner.c_regtype) }}</p>
|
||||
</div>
|
||||
<div>
|
||||
<label class="block text-sm font-medium text-gray-700">实名认证状态</label>
|
||||
<label class="block text-sm font-medium text-gray-700">{{ $t('Real-name Status') }}</label>
|
||||
<p class="mt-1 text-sm text-gray-900">{{ getRealNameStatusText(selectedOwner.r_status) }}</p>
|
||||
</div>
|
||||
<div v-if="selectedOwner.c_regtype === 'E'">
|
||||
<label class="block text-sm font-medium text-gray-700">单位名称</label>
|
||||
<label class="block text-sm font-medium text-gray-700">{{ $t('Company Name') }}</label>
|
||||
<p class="mt-1 text-sm text-gray-900">{{ selectedOwner.c_org_m || '-' }}</p>
|
||||
</div>
|
||||
<div>
|
||||
<label class="block text-sm font-medium text-gray-700">姓名</label>
|
||||
<label class="block text-sm font-medium text-gray-700">{{ $t('Name') }}</label>
|
||||
<p class="mt-1 text-sm text-gray-900">{{ getDisplayName(selectedOwner) }}</p>
|
||||
</div>
|
||||
</div>
|
||||
@ -225,26 +225,26 @@
|
||||
|
||||
<!-- 联系信息 -->
|
||||
<div>
|
||||
<h4 class="text-base font-medium text-gray-900 mb-4">联系信息</h4>
|
||||
<h4 class="text-base font-medium text-gray-900 mb-4">{{ $t('Contact Information') }}</h4>
|
||||
<div class="grid grid-cols-2 gap-4">
|
||||
<div>
|
||||
<label class="block text-sm font-medium text-gray-700">电子邮箱</label>
|
||||
<label class="block text-sm font-medium text-gray-700">{{ $t('Email') }}</label>
|
||||
<p class="mt-1 text-sm text-gray-900">{{ selectedOwner.c_em || '-' }}</p>
|
||||
</div>
|
||||
<div>
|
||||
<label class="block text-sm font-medium text-gray-700">手机号码</label>
|
||||
<label class="block text-sm font-medium text-gray-700">{{ $t('Phone Number') }}</label>
|
||||
<p class="mt-1 text-sm text-gray-900">{{ selectedOwner.c_ph || '-' }}</p>
|
||||
</div>
|
||||
<div>
|
||||
<label class="block text-sm font-medium text-gray-700">省份</label>
|
||||
<label class="block text-sm font-medium text-gray-700">{{ $t('Province') }}</label>
|
||||
<p class="mt-1 text-sm text-gray-900">{{ selectedOwner.c_st_m || '-' }}</p>
|
||||
</div>
|
||||
<div>
|
||||
<label class="block text-sm font-medium text-gray-700">城市</label>
|
||||
<label class="block text-sm font-medium text-gray-700">{{ $t('City') }}</label>
|
||||
<p class="mt-1 text-sm text-gray-900">{{ selectedOwner.c_ct_m || '-' }}</p>
|
||||
</div>
|
||||
<div class="col-span-2">
|
||||
<label class="block text-sm font-medium text-gray-700">通讯地址</label>
|
||||
<label class="block text-sm font-medium text-gray-700">{{ $t('Address') }}</label>
|
||||
<p class="mt-1 text-sm text-gray-900">{{ selectedOwner.c_adr_m || '-' }}</p>
|
||||
</div>
|
||||
</div>
|
||||
@ -252,14 +252,14 @@
|
||||
|
||||
<!-- 证件信息 -->
|
||||
<div>
|
||||
<h4 class="text-base font-medium text-gray-900 mb-4">证件信息</h4>
|
||||
<h4 class="text-base font-medium text-gray-900 mb-4">{{ $t('ID Information') }}</h4>
|
||||
<div class="grid grid-cols-2 gap-4">
|
||||
<div>
|
||||
<label class="block text-sm font-medium text-gray-700">证件类型</label>
|
||||
<label class="block text-sm font-medium text-gray-700">{{ $t('ID Type') }}</label>
|
||||
<p class="mt-1 text-sm text-gray-900">{{ getCertificateTypeName(selectedOwner.c_idtype_gswl) }}</p>
|
||||
</div>
|
||||
<div>
|
||||
<label class="block text-sm font-medium text-gray-700">证件号码</label>
|
||||
<label class="block text-sm font-medium text-gray-700">{{ $t('ID Number') }}</label>
|
||||
<p class="mt-1 text-sm text-gray-900">{{ selectedOwner.c_idnum_gswl || '-' }}</p>
|
||||
</div>
|
||||
</div>
|
||||
@ -274,13 +274,13 @@
|
||||
@click="closeDetailDialog"
|
||||
variant="outline"
|
||||
>
|
||||
关闭
|
||||
{{ $t('Close') }}
|
||||
</Button>
|
||||
<Button
|
||||
@click="editOwner(selectedOwner)"
|
||||
variant="solid"
|
||||
>
|
||||
编辑
|
||||
{{ $t('Edit') }}
|
||||
</Button>
|
||||
</div>
|
||||
</div>
|
||||
@ -293,7 +293,7 @@
|
||||
<!-- 标题栏 -->
|
||||
<div class="p-4 border-b border-gray-200 bg-white rounded-t-lg flex-shrink-0">
|
||||
<div class="flex items-center justify-between">
|
||||
<h3 class="text-lg font-medium text-gray-900">编辑域名所有者</h3>
|
||||
<h3 class="text-lg font-medium text-gray-900">{{ $t('Edit Domain Owner') }}</h3>
|
||||
<button
|
||||
@click="closeEditDialog"
|
||||
class="text-gray-400 hover:text-gray-600 transition-colors duration-200"
|
||||
@ -310,7 +310,7 @@
|
||||
<form @submit.prevent="handleEditSubmit" class="space-y-6">
|
||||
<!-- 所有者类型 -->
|
||||
<div>
|
||||
<label class="block text-sm font-medium text-gray-700 mb-2">所有者类型</label>
|
||||
<label class="block text-sm font-medium text-gray-700 mb-2">{{ $t('Owner Type') }}</label>
|
||||
<div class="flex gap-4">
|
||||
<label class="flex items-center">
|
||||
<input
|
||||
@ -319,7 +319,7 @@
|
||||
value="I"
|
||||
class="mr-2"
|
||||
>
|
||||
<span class="text-sm">个人</span>
|
||||
<span class="text-sm">{{ $t('Individual') }}</span>
|
||||
</label>
|
||||
<label class="flex items-center">
|
||||
<input
|
||||
@ -328,7 +328,7 @@
|
||||
value="E"
|
||||
class="mr-2"
|
||||
>
|
||||
<span class="text-sm">企业/组织</span>
|
||||
<span class="text-sm">{{ $t('Enterprise/Organization') }}</span>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
@ -337,33 +337,33 @@
|
||||
<div class="space-y-4">
|
||||
<!-- 单位名称(企业时显示) -->
|
||||
<div v-if="editFormData.c_regtype === 'E'" class="w-full">
|
||||
<label class="block text-sm font-medium text-gray-700 mb-2">所有者单位名称</label>
|
||||
<label class="block text-sm font-medium text-gray-700 mb-2">{{ $t('Owner Company Name') }}</label>
|
||||
<input
|
||||
v-model="editFormData.c_org_m"
|
||||
type="text"
|
||||
class="w-full border rounded-lg px-3 py-2 focus:ring-2 focus:ring-blue-500 focus:border-blue-500"
|
||||
placeholder="请输入单位名称"
|
||||
:placeholder="$t('Please enter company name')"
|
||||
>
|
||||
</div>
|
||||
|
||||
<!-- 姓名部分 -->
|
||||
<div class="grid grid-cols-1 md:grid-cols-2 gap-4">
|
||||
<div>
|
||||
<label class="block text-sm font-medium text-gray-700 mb-2">姓</label>
|
||||
<label class="block text-sm font-medium text-gray-700 mb-2">{{ $t('Last Name') }}</label>
|
||||
<input
|
||||
v-model="editFormData.c_ln_m"
|
||||
type="text"
|
||||
class="w-full border rounded-lg px-3 py-2 focus:ring-2 focus:ring-blue-500 focus:border-blue-500"
|
||||
placeholder="请输入姓"
|
||||
:placeholder="$t('Please enter last name')"
|
||||
>
|
||||
</div>
|
||||
<div>
|
||||
<label class="block text-sm font-medium text-gray-700 mb-2">名</label>
|
||||
<label class="block text-sm font-medium text-gray-700 mb-2">{{ $t('First Name') }}</label>
|
||||
<input
|
||||
v-model="editFormData.c_fn_m"
|
||||
type="text"
|
||||
class="w-full border rounded-lg px-3 py-2 focus:ring-2 focus:ring-blue-500 focus:border-blue-500"
|
||||
placeholder="请输入名"
|
||||
:placeholder="$t('Please enter first name')"
|
||||
>
|
||||
</div>
|
||||
</div>
|
||||
@ -371,21 +371,21 @@
|
||||
<!-- 联系信息 -->
|
||||
<div class="grid grid-cols-1 md:grid-cols-2 gap-4">
|
||||
<div>
|
||||
<label class="block text-sm font-medium text-gray-700 mb-2">电子邮箱</label>
|
||||
<label class="block text-sm font-medium text-gray-700 mb-2">{{ $t('Email') }}</label>
|
||||
<input
|
||||
v-model="editFormData.c_em"
|
||||
type="email"
|
||||
class="w-full border rounded-lg px-3 py-2 focus:ring-2 focus:ring-blue-500 focus:border-blue-500"
|
||||
placeholder="请输入电子邮箱"
|
||||
:placeholder="$t('Please enter email')"
|
||||
>
|
||||
</div>
|
||||
<div>
|
||||
<label class="block text-sm font-medium text-gray-700 mb-2">手机号码</label>
|
||||
<label class="block text-sm font-medium text-gray-700 mb-2">{{ $t('Phone Number') }}</label>
|
||||
<input
|
||||
v-model="editFormData.c_ph"
|
||||
type="tel"
|
||||
class="w-full border rounded-lg px-3 py-2 focus:ring-2 focus:ring-blue-500 focus:border-blue-500"
|
||||
placeholder="请输入手机号码"
|
||||
:placeholder="$t('Please enter phone number')"
|
||||
>
|
||||
</div>
|
||||
</div>
|
||||
@ -393,41 +393,41 @@
|
||||
<!-- 地址信息 -->
|
||||
<div class="grid grid-cols-1 md:grid-cols-3 gap-4">
|
||||
<div>
|
||||
<label class="block text-sm font-medium text-gray-700 mb-2">省份</label>
|
||||
<label class="block text-sm font-medium text-gray-700 mb-2">{{ $t('Province') }}</label>
|
||||
<input
|
||||
v-model="editFormData.c_st_m"
|
||||
type="text"
|
||||
class="w-full border rounded-lg px-3 py-2 focus:ring-2 focus:ring-blue-500 focus:border-blue-500"
|
||||
placeholder="请输入省份"
|
||||
:placeholder="$t('Please enter province')"
|
||||
>
|
||||
</div>
|
||||
<div>
|
||||
<label class="block text-sm font-medium text-gray-700 mb-2">城市</label>
|
||||
<label class="block text-sm font-medium text-gray-700 mb-2">{{ $t('City') }}</label>
|
||||
<input
|
||||
v-model="editFormData.c_ct_m"
|
||||
type="text"
|
||||
class="w-full border rounded-lg px-3 py-2 focus:ring-2 focus:ring-blue-500 focus:border-blue-500"
|
||||
placeholder="请输入城市"
|
||||
:placeholder="$t('Please enter city')"
|
||||
>
|
||||
</div>
|
||||
<div>
|
||||
<label class="block text-sm font-medium text-gray-700 mb-2">邮编</label>
|
||||
<label class="block text-sm font-medium text-gray-700 mb-2">{{ $t('Postal Code') }}</label>
|
||||
<input
|
||||
v-model="editFormData.c_pc"
|
||||
type="text"
|
||||
class="w-full border rounded-lg px-3 py-2 focus:ring-2 focus:ring-blue-500 focus:border-blue-500"
|
||||
placeholder="请输入邮编"
|
||||
:placeholder="$t('Please enter postal code')"
|
||||
>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<label class="block text-sm font-medium text-gray-700 mb-2">通讯地址</label>
|
||||
<label class="block text-sm font-medium text-gray-700 mb-2">{{ $t('Address') }}</label>
|
||||
<input
|
||||
v-model="editFormData.c_adr_m"
|
||||
type="text"
|
||||
class="w-full border rounded-lg px-3 py-2 focus:ring-2 focus:ring-blue-500 focus:border-blue-500"
|
||||
placeholder="请输入通讯地址"
|
||||
:placeholder="$t('Please enter address')"
|
||||
>
|
||||
</div>
|
||||
</div>
|
||||
@ -441,14 +441,14 @@
|
||||
@click="closeEditDialog"
|
||||
variant="outline"
|
||||
>
|
||||
取消
|
||||
{{ $t('Cancel') }}
|
||||
</Button>
|
||||
<Button
|
||||
@click="handleEditSubmit"
|
||||
:loading="editLoading"
|
||||
variant="solid"
|
||||
>
|
||||
保存
|
||||
{{ $t('Save') }}
|
||||
</Button>
|
||||
</div>
|
||||
</div>
|
||||
@ -559,29 +559,29 @@ export default {
|
||||
// 获取实名认证状态文本
|
||||
getRealNameStatusText(status) {
|
||||
if (!status || status === '') {
|
||||
return '未实名认证';
|
||||
return this.$t('Not Real-name Verified');
|
||||
}
|
||||
// 根据r_status字段判断实名认证状态
|
||||
// 0: 未实名, 1: 实名成功, 2: 实名中, 3: 实名失败, 4: 认证过期, 5: 待审核
|
||||
const statusMap = {
|
||||
'0': '未实名认证',
|
||||
'1': '已实名认证',
|
||||
'2': '实名认证中',
|
||||
'3': '实名认证失败',
|
||||
'4': '实名认证过期',
|
||||
'5': '待审核'
|
||||
'0': this.$t('Not Real-name Verified'),
|
||||
'1': this.$t('Real-name Verified'),
|
||||
'2': this.$t('Real-name Verification in Progress'),
|
||||
'3': this.$t('Real-name Verification Failed'),
|
||||
'4': this.$t('Real-name Verification Expired'),
|
||||
'5': this.$t('Pending Review')
|
||||
};
|
||||
return statusMap[status] || '未实名认证';
|
||||
return statusMap[status] || this.$t('Not Real-name Verified');
|
||||
},
|
||||
|
||||
// 获取所有者类型文本
|
||||
getOwnerTypeText(type) {
|
||||
if (!type || type === '') return '未知';
|
||||
if (!type || type === '') return this.$t('Unknown');
|
||||
const typeMap = {
|
||||
'I': '个人',
|
||||
'E': '企业/组织'
|
||||
'I': this.$t('Individual'),
|
||||
'E': this.$t('Enterprise/Organization')
|
||||
};
|
||||
return typeMap[type] || '未知';
|
||||
return typeMap[type] || this.$t('Unknown');
|
||||
},
|
||||
|
||||
// 获取地址信息
|
||||
@ -597,25 +597,25 @@ export default {
|
||||
getCertificateTypeName(type) {
|
||||
const typeMap = {
|
||||
// 字符串格式映射
|
||||
'SFZ': '身份证',
|
||||
'HZ': '护照',
|
||||
'GAJMTX': '港澳居民来往内地通行证',
|
||||
'TWJMTX': '台湾居民来往大陆通行证',
|
||||
'WJLSFZ': '外国人永久居留身份证',
|
||||
'GAJZZ': '港澳台居民居住证',
|
||||
'ORG': '组织机构代码证',
|
||||
'YYZZ': '工商营业执照',
|
||||
'TYDM': '统一社会信用代码',
|
||||
'SFZ': this.$t('ID Card'),
|
||||
'HZ': this.$t('Passport'),
|
||||
'GAJMTX': this.$t('Mainland Travel Permit for Hong Kong and Macao Residents'),
|
||||
'TWJMTX': this.$t('Mainland Travel Permit for Taiwan Residents'),
|
||||
'WJLSFZ': this.$t('Permanent Residence ID Card for Foreigners'),
|
||||
'GAJZZ': this.$t('Residence Permit for Hong Kong, Macao and Taiwan Residents'),
|
||||
'ORG': this.$t('Organization Code Certificate'),
|
||||
'YYZZ': this.$t('Business License'),
|
||||
'TYDM': this.$t('Unified Social Credit Code'),
|
||||
// 数字格式映射
|
||||
'1': '身份证',
|
||||
'5': '护照',
|
||||
'6': '港澳居民来往内地通行证',
|
||||
'11': '台湾居民来往大陆通行证',
|
||||
'12': '外国人永久居留身份证',
|
||||
'30': '港澳台居民居住证',
|
||||
'2': '组织机构代码证',
|
||||
'3': '工商营业执照',
|
||||
'4': '统一社会信用代码'
|
||||
'1': this.$t('ID Card'),
|
||||
'5': this.$t('Passport'),
|
||||
'6': this.$t('Mainland Travel Permit for Hong Kong and Macao Residents'),
|
||||
'11': this.$t('Mainland Travel Permit for Taiwan Residents'),
|
||||
'12': this.$t('Permanent Residence ID Card for Foreigners'),
|
||||
'30': this.$t('Residence Permit for Hong Kong, Macao and Taiwan Residents'),
|
||||
'2': this.$t('Organization Code Certificate'),
|
||||
'3': this.$t('Business License'),
|
||||
'4': this.$t('Unified Social Credit Code')
|
||||
};
|
||||
return typeMap[type] || type || '-';
|
||||
},
|
||||
|
||||
@ -6,32 +6,32 @@
|
||||
</div>
|
||||
<div class="flex gap-2">
|
||||
<Button
|
||||
@click="refreshRecords"
|
||||
:loading="$resources.dnsRecords.loading"
|
||||
variant="outline"
|
||||
size="sm"
|
||||
>
|
||||
<RefreshCwIcon class="h-4 w-4 mr-1" />
|
||||
刷新
|
||||
</Button>
|
||||
@click="refreshRecords"
|
||||
:loading="$resources.dnsRecords.loading"
|
||||
variant="outline"
|
||||
size="sm"
|
||||
>
|
||||
<RefreshCwIcon class="h-4 w-4 mr-1" />
|
||||
{{ $t('Refresh') }}
|
||||
</Button>
|
||||
<Button
|
||||
v-if="selectedRecords.length > 0"
|
||||
@click="batchDeleteRecords"
|
||||
variant="outline"
|
||||
size="sm"
|
||||
class="text-red-600 hover:text-red-700"
|
||||
>
|
||||
<Trash2Icon class="h-4 w-4 mr-1" />
|
||||
删除选中 ({{ selectedRecords.length }})
|
||||
</Button>
|
||||
v-if="selectedRecords.length > 0"
|
||||
@click="batchDeleteRecords"
|
||||
variant="outline"
|
||||
size="sm"
|
||||
class="text-red-600 hover:text-red-700"
|
||||
>
|
||||
<Trash2Icon class="h-4 w-4 mr-1" />
|
||||
{{ $t('Delete Selected') }} ({{ selectedRecords.length }})
|
||||
</Button>
|
||||
<Button
|
||||
@click="addNewRow"
|
||||
variant="solid"
|
||||
size="sm"
|
||||
>
|
||||
<PlusIcon class="h-4 w-4 mr-1" />
|
||||
添加记录
|
||||
</Button>
|
||||
@click="addNewRow"
|
||||
variant="solid"
|
||||
size="sm"
|
||||
>
|
||||
<PlusIcon class="h-4 w-4 mr-1" />
|
||||
{{ $t('Add Record') }}
|
||||
</Button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@ -39,7 +39,7 @@
|
||||
<div v-if="$resources.dnsRecords.loading" class="flex items-center justify-center py-12">
|
||||
<div class="flex items-center space-x-2">
|
||||
<Loader2Icon class="h-5 w-5 animate-spin text-gray-500" />
|
||||
<span class="text-gray-500">正在加载DNS记录...</span>
|
||||
<span class="text-gray-500">{{ $t('Loading DNS records...') }}</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@ -48,7 +48,7 @@
|
||||
<div class="flex items-center">
|
||||
<AlertCircleIcon class="h-5 w-5 text-red-400 mr-2" />
|
||||
<div>
|
||||
<h3 class="text-sm font-medium text-red-800">加载失败</h3>
|
||||
<h3 class="text-sm font-medium text-red-800">{{ $t('Load failed') }}</h3>
|
||||
<p class="text-sm text-red-700 mt-1">{{ $resources.dnsRecords.error }}</p>
|
||||
</div>
|
||||
</div>
|
||||
@ -70,31 +70,31 @@
|
||||
/>
|
||||
</th>
|
||||
<th class="px-4 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
|
||||
编号
|
||||
{{ $t('Number') }}
|
||||
</th>
|
||||
<th class="px-4 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
|
||||
主机名 *
|
||||
{{ $t('Hostname') }} *
|
||||
</th>
|
||||
<th class="px-4 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
|
||||
类型 *
|
||||
{{ $t('Type') }} *
|
||||
</th>
|
||||
<th class="px-4 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
|
||||
线路
|
||||
{{ $t('Line') }}
|
||||
</th>
|
||||
<th class="px-4 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
|
||||
对应值 *
|
||||
{{ $t('Value') }} *
|
||||
</th>
|
||||
<th class="px-4 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
|
||||
TTL
|
||||
{{ $t('TTL') }}
|
||||
</th>
|
||||
<th class="px-4 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
|
||||
优先级
|
||||
{{ $t('Priority') }}
|
||||
</th>
|
||||
<th class="px-4 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
|
||||
状态
|
||||
{{ $t('Status') }}
|
||||
</th>
|
||||
<th class="px-4 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
|
||||
操作
|
||||
{{ $t('Actions') }}
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
@ -121,7 +121,7 @@
|
||||
type="text"
|
||||
class="w-24 px-2 py-1 text-sm border border-gray-300 rounded focus:ring-2 focus:ring-blue-500 focus:border-blue-500"
|
||||
:class="{ 'bg-gray-100 text-gray-500 cursor-not-allowed': !record.isNew }"
|
||||
placeholder="主机名"
|
||||
:placeholder="$t('Hostname')"
|
||||
:disabled="!record.isNew"
|
||||
/>
|
||||
</div>
|
||||
@ -160,7 +160,7 @@
|
||||
'bg-orange-100 text-orange-800': record.type === 'SRV',
|
||||
'bg-gray-100 text-gray-800': !record.type
|
||||
}">
|
||||
{{ record.type || '未知' }}
|
||||
{{ record.type || $t('Unknown') }}
|
||||
</span>
|
||||
</div>
|
||||
</td>
|
||||
@ -171,12 +171,12 @@
|
||||
v-model="record.line"
|
||||
class="w-20 px-2 py-1 text-sm border border-gray-300 rounded focus:ring-2 focus:ring-blue-500 focus:border-blue-500"
|
||||
>
|
||||
<option value="">默认</option>
|
||||
<option value="LTEL">电信</option>
|
||||
<option value="LCNC">联通</option>
|
||||
<option value="LMOB">移动</option>
|
||||
<option value="LEDU">教育网</option>
|
||||
<option value="LSEO">搜索引擎</option>
|
||||
<option value="">{{ $t('Default') }}</option>
|
||||
<option value="LTEL">{{ $t('Telecom') }}</option>
|
||||
<option value="LCNC">{{ $t('Unicom') }}</option>
|
||||
<option value="LMOB">{{ $t('Mobile') }}</option>
|
||||
<option value="LEDU">{{ $t('Education Network') }}</option>
|
||||
<option value="LSEO">{{ $t('Search Engine') }}</option>
|
||||
</select>
|
||||
</div>
|
||||
<div v-else class="text-sm text-gray-500">
|
||||
@ -190,7 +190,7 @@
|
||||
v-model="record.value"
|
||||
type="text"
|
||||
class="w-32 px-2 py-1 text-sm border border-gray-300 rounded focus:ring-2 focus:ring-blue-500 focus:border-blue-500"
|
||||
placeholder="记录值"
|
||||
:placeholder="$t('Record Value')"
|
||||
/>
|
||||
</div>
|
||||
<div v-else class="text-sm text-gray-900 max-w-xs truncate" :title="record.value">
|
||||
@ -229,7 +229,7 @@
|
||||
</td>
|
||||
<td class="px-4 py-4 whitespace-nowrap text-sm">
|
||||
<span class="inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-medium bg-green-100 text-green-800">
|
||||
正常
|
||||
{{ $t('Normal') }}
|
||||
</span>
|
||||
</td>
|
||||
<td class="px-4 py-4 whitespace-nowrap text-sm">
|
||||
@ -241,7 +241,7 @@
|
||||
size="sm"
|
||||
class="text-blue-600 hover:text-blue-700"
|
||||
>
|
||||
编辑
|
||||
{{ $t('Edit') }}
|
||||
</Button>
|
||||
<Button
|
||||
v-if="record.editing"
|
||||
@ -250,7 +250,7 @@
|
||||
size="sm"
|
||||
class="text-green-600 hover:text-green-700"
|
||||
>
|
||||
保存
|
||||
{{ $t('Save') }}
|
||||
</Button>
|
||||
<Button
|
||||
v-if="record.editing"
|
||||
@ -259,7 +259,7 @@
|
||||
size="sm"
|
||||
class="text-gray-600 hover:text-gray-700"
|
||||
>
|
||||
取消
|
||||
{{ $t('Cancel') }}
|
||||
</Button>
|
||||
<Button
|
||||
v-if="!record.editing && !record.isNew"
|
||||
@ -268,7 +268,7 @@
|
||||
size="sm"
|
||||
class="text-red-600 hover:text-red-700"
|
||||
>
|
||||
删除
|
||||
{{ $t('Delete') }}
|
||||
</Button>
|
||||
</div>
|
||||
</td>
|
||||
@ -280,9 +280,9 @@
|
||||
<!-- 分页 -->
|
||||
<div v-if="pagination.total > pagination.limit" class="flex flex-col items-center space-y-4">
|
||||
<div class="text-sm text-gray-700">
|
||||
显示第 {{ (pagination.pageno - 1) * pagination.limit + 1 }} -
|
||||
{{ Math.min(pagination.pageno * pagination.limit, pagination.total) }} 条,
|
||||
共 {{ pagination.total }} 条记录
|
||||
{{ $t('Showing') }} {{ (pagination.pageno - 1) * pagination.limit + 1 }} -
|
||||
{{ Math.min(pagination.pageno * pagination.limit, pagination.total) }} {{ $t('of') }}
|
||||
{{ pagination.total }} {{ $t('records') }}
|
||||
</div>
|
||||
<div class="flex items-center space-x-2">
|
||||
<Button
|
||||
@ -326,12 +326,12 @@
|
||||
<!-- 空状态 -->
|
||||
<div v-else-if="!$resources.dnsRecords.loading && !$resources.dnsRecords.error && dnsRecords.length === 0" class="text-center py-12">
|
||||
<GlobeIcon class="mx-auto h-12 w-12 text-gray-400" />
|
||||
<h3 class="mt-2 text-sm font-medium text-gray-900">暂无DNS记录</h3>
|
||||
<p class="mt-1 text-sm text-gray-500">开始添加您的第一个DNS解析记录</p>
|
||||
<h3 class="mt-2 text-sm font-medium text-gray-900">{{ $t('No DNS records yet') }}</h3>
|
||||
<p class="mt-1 text-sm text-gray-500">{{ $t('Start adding your first DNS record') }}</p>
|
||||
<div class="mt-6">
|
||||
<Button @click="addNewRow" variant="solid">
|
||||
<PlusIcon class="h-4 w-4 mr-1" />
|
||||
添加记录
|
||||
{{ $t('Add Record') }}
|
||||
</Button>
|
||||
</div>
|
||||
</div>
|
||||
@ -450,12 +450,12 @@ export default {
|
||||
// 获取线路显示名称
|
||||
getLineDisplayName(line) {
|
||||
const lineMap = {
|
||||
'LTEL': '电信',
|
||||
'LCNC': '联通',
|
||||
'LMOB': '移动',
|
||||
'LEDU': '教育网',
|
||||
'LSEO': '搜索引擎',
|
||||
'': '默认'
|
||||
'LTEL': this.$t('Telecom'),
|
||||
'LCNC': this.$t('Unicom'),
|
||||
'LMOB': this.$t('Mobile'),
|
||||
'LEDU': this.$t('Education Network'),
|
||||
'LSEO': this.$t('Search Engine'),
|
||||
'': this.$t('Default')
|
||||
};
|
||||
return lineMap[line] || line;
|
||||
},
|
||||
|
||||
@ -19,7 +19,7 @@
|
||||
<svg class="mr-2 h-4 w-4 text-green-600" fill="currentColor" viewBox="0 0 20 20">
|
||||
<path fill-rule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z" clip-rule="evenodd"></path>
|
||||
</svg>
|
||||
实名认证
|
||||
{{ $t('Real-name Verified') }}
|
||||
</div>
|
||||
<button
|
||||
@click="showRealNameInfo"
|
||||
@ -28,7 +28,7 @@
|
||||
<svg class="mr-1.5 h-4 w-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
||||
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"></path>
|
||||
</svg>
|
||||
查看认证信息
|
||||
{{ $t('View Verification Information') }}
|
||||
</button>
|
||||
</div>
|
||||
<div v-else class="flex items-center space-x-3">
|
||||
@ -36,13 +36,13 @@
|
||||
<svg class="mr-2 h-4 w-4 text-amber-600" fill="currentColor" viewBox="0 0 20 20">
|
||||
<path fill-rule="evenodd" d="M8.257 3.099c.765-1.36 2.722-1.36 3.486 0l5.58 9.92c.75 1.334-.213 2.98-1.742 2.98H4.42c-1.53 0-2.493-1.646-1.743-2.98l5.58-9.92zM11 13a1 1 0 11-2 0 1 1 0 012 0zm-1-8a1 1 0 00-1 1v3a1 1 0 002 0V6a1 1 0 00-1-1z" clip-rule="evenodd"></path>
|
||||
</svg>
|
||||
待实名认证
|
||||
{{ $t('Pending Real-name Verification') }}
|
||||
</div>
|
||||
<button
|
||||
@click="showUploadRealName"
|
||||
class="inline-flex items-center px-3 py-1.5 text-sm font-medium text-white bg-gradient-to-r from-blue-600 to-blue-700 hover:from-blue-700 hover:to-blue-800 rounded-lg transition-all duration-200 shadow-sm hover:shadow-md"
|
||||
>
|
||||
上传实名资料
|
||||
{{ $t('Upload Real-name Documents') }}
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
@ -51,7 +51,7 @@
|
||||
|
||||
<div v-if="$domain.pg.end_date" class="mt-2 inline-flex items-center rounded-full bg-amber-50 px-4 py-2 text-sm font-medium text-amber-800">
|
||||
<ClockIcon class="mr-1.5 h-4 w-4 text-amber-500" />
|
||||
到期时间:{{ $format.date($domain.pg.end_date) }}
|
||||
{{ $t('Expiration Date') }}: {{ $format.date($domain.pg.end_date) }}
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex gap-2">
|
||||
@ -60,7 +60,7 @@
|
||||
:loading="$domain.renew?.loading"
|
||||
class="px-5 !bg-[#1fc76f] !hover:bg-[#1bb85f] !text-white"
|
||||
>
|
||||
续费
|
||||
{{ $t('Renew') }}
|
||||
</Button>
|
||||
</div>
|
||||
</div>
|
||||
@ -70,7 +70,7 @@
|
||||
<!-- 域名信息 -->
|
||||
<div class="rounded-md border">
|
||||
<div class="h-12 border-b px-5 py-4">
|
||||
<h2 class="text-lg font-medium text-gray-900">域名信息</h2>
|
||||
<h2 class="text-lg font-medium text-gray-900">{{ $t('Domain Information') }}</h2>
|
||||
</div>
|
||||
<div>
|
||||
<div
|
||||
@ -78,7 +78,7 @@
|
||||
:key="info.label"
|
||||
class="flex items-center px-5 py-3 last:pb-5 even:bg-gray-50/70"
|
||||
>
|
||||
<div class="w-1/3 text-base text-gray-600">{{ info.label }}</div>
|
||||
<div class="w-1/3 text-base text-gray-600">{{ $t(info.label) }}</div>
|
||||
<div
|
||||
class="flex w-2/3 items-center space-x-2 text-base text-gray-900"
|
||||
>
|
||||
@ -106,7 +106,7 @@
|
||||
<!-- 操作 -->
|
||||
<div class="rounded-md border">
|
||||
<div class="h-12 border-b px-5 py-4">
|
||||
<h2 class="text-lg font-medium text-gray-900">操作</h2>
|
||||
<h2 class="text-lg font-medium text-gray-900">{{ $t('Actions') }}</h2>
|
||||
</div>
|
||||
<div class="p-5">
|
||||
<div class="flex flex-wrap gap-2">
|
||||
@ -116,7 +116,7 @@
|
||||
variant="outline"
|
||||
class="bg-gray-100 text-gray-700 hover:bg-gray-200"
|
||||
>
|
||||
修改DNS服务器
|
||||
{{ $t('Modify DNS Servers') }}
|
||||
</Button>
|
||||
<!-- <Button
|
||||
@click="toggleAutoRenew"
|
||||
@ -133,32 +133,32 @@
|
||||
<!-- DNS服务器信息 -->
|
||||
<div class="rounded-md border">
|
||||
<div class="h-12 border-b px-5 py-4">
|
||||
<h2 class="text-lg font-medium text-gray-900">DNS服务器</h2>
|
||||
<h2 class="text-lg font-medium text-gray-900">{{ $t('DNS Servers') }}</h2>
|
||||
</div>
|
||||
<div class="p-5">
|
||||
<div class="space-y-3">
|
||||
<div class="flex justify-between">
|
||||
<span class="text-gray-600">主DNS:</span>
|
||||
<span class="text-gray-600">{{ $t('Primary DNS') }}:</span>
|
||||
<span class="font-mono text-gray-900">{{ $domain.pg.dns_host1 }}</span>
|
||||
</div>
|
||||
<div class="flex justify-between">
|
||||
<span class="text-gray-600">辅DNS:</span>
|
||||
<span class="text-gray-600">{{ $t('Secondary DNS') }}:</span>
|
||||
<span class="font-mono text-gray-900">{{ $domain.pg.dns_host2 }}</span>
|
||||
</div>
|
||||
<div class="flex justify-between">
|
||||
<span class="text-gray-600">DNS3:</span>
|
||||
<span class="text-gray-600">{{ $t('DNS3') }}:</span>
|
||||
<span class="font-mono text-gray-900">{{ $domain.pg.dns_host3 }}</span>
|
||||
</div>
|
||||
<div class="flex justify-between">
|
||||
<span class="text-gray-600">DNS4:</span>
|
||||
<span class="text-gray-600">{{ $t('DNS4') }}:</span>
|
||||
<span class="font-mono text-gray-900">{{ $domain.pg.dns_host4 }}</span>
|
||||
</div>
|
||||
<div class="flex justify-between">
|
||||
<span class="text-gray-600">DNS5:</span>
|
||||
<span class="text-gray-600">{{ $t('DNS5') }}:</span>
|
||||
<span class="font-mono text-gray-900">{{ $domain.pg.dns_host5 }}</span>
|
||||
</div>
|
||||
<div class="flex justify-between">
|
||||
<span class="text-gray-600">DNS6:</span>
|
||||
<span class="text-gray-600">{{ $t('DNS6') }}:</span>
|
||||
<span class="font-mono text-gray-900">{{ $domain.pg.dns_host6 }}</span>
|
||||
</div>
|
||||
</div>
|
||||
@ -202,12 +202,12 @@ export default {
|
||||
methods: {
|
||||
getStatusText(status) {
|
||||
const statusMap = {
|
||||
'ok': '正常',
|
||||
'clienthold': '锁定',
|
||||
'clientupdateprohibited': '更新锁定',
|
||||
'clienttransferprohibited': '转移锁定',
|
||||
'clientdeleteprohibited': '删除锁定',
|
||||
'clientrenewprohibited': '续费锁定'
|
||||
'ok': this.$t('Normal'),
|
||||
'clienthold': this.$t('Locked'),
|
||||
'clientupdateprohibited': this.$t('Update Locked'),
|
||||
'clienttransferprohibited': this.$t('Transfer Locked'),
|
||||
'clientdeleteprohibited': this.$t('Delete Locked'),
|
||||
'clientrenewprohibited': this.$t('Renew Locked')
|
||||
};
|
||||
return statusMap[status] || status;
|
||||
},
|
||||
@ -472,19 +472,19 @@ export default {
|
||||
domainInformation() {
|
||||
return [
|
||||
{
|
||||
label: '状态',
|
||||
label: 'Status',
|
||||
value: this.getStatusText(this.$domain.pg?.status),
|
||||
},
|
||||
},
|
||||
{
|
||||
label: '域名',
|
||||
label: 'Domain',
|
||||
value: this.$domain.pg?.domain,
|
||||
},
|
||||
{
|
||||
label: '注册时间',
|
||||
label: 'Registration Date',
|
||||
value: this.$domain.pg?.registration_date,
|
||||
},
|
||||
{
|
||||
label: '所有者',
|
||||
label: 'Owner',
|
||||
value: this.getOwnerDisplayName(),
|
||||
},
|
||||
];
|
||||
|
||||
@ -302,7 +302,115 @@ Signature,签名,
|
||||
Sites,网站,
|
||||
Search,搜索,
|
||||
Search Sites,搜索站点,
|
||||
Search owner name, company name...,搜索所有者姓名、单位名称...,搜索所有者姓名、单位名称...,
|
||||
Site Update,站点更新,
|
||||
Refresh,刷新,
|
||||
Delete Selected,删除选中,
|
||||
Add Record,添加记录,
|
||||
Loading DNS records...,正在加载DNS记录...,
|
||||
Load failed,加载失败,
|
||||
Number,编号,
|
||||
Hostname,主机名,
|
||||
Type,类型,
|
||||
Line,线路,
|
||||
Value,对应值,
|
||||
TTL,TTL,
|
||||
Priority,优先级,
|
||||
Status,状态,
|
||||
Actions,操作,
|
||||
Unknown,未知,
|
||||
Record Value,记录值,
|
||||
Normal,正常,
|
||||
Edit,编辑,
|
||||
Save,保存,
|
||||
Cancel,取消,
|
||||
Delete,删除,
|
||||
Showing,显示,
|
||||
of,的,
|
||||
records,条记录,
|
||||
No DNS records yet,暂无DNS记录,
|
||||
Start adding your first DNS record,开始添加您的第一个DNS解析记录,
|
||||
Telecom,电信,
|
||||
Unicom,联通,
|
||||
Mobile,移动,
|
||||
Education Network,教育网,
|
||||
Search Engine,搜索引擎,
|
||||
Default,默认,
|
||||
All Status,全部状态,
|
||||
Real-name Verified,实名认证,
|
||||
View Verification Information,查看认证信息,
|
||||
Pending Real-name Verification,待实名认证,
|
||||
Upload Real-name Documents,上传实名资料,
|
||||
Expiration Date,到期时间,
|
||||
Renew,续费,
|
||||
Domain Information,域名信息,
|
||||
Status,状态,
|
||||
Domain,域名,
|
||||
Registration Date,注册时间,
|
||||
Owner,所有者,
|
||||
Actions,操作,
|
||||
Modify DNS Servers,修改DNS服务器,
|
||||
DNS Servers,DNS服务器,
|
||||
Primary DNS,主DNS,
|
||||
Secondary DNS,辅DNS,
|
||||
DNS3,DNS3,
|
||||
DNS4,DNS4,
|
||||
DNS5,DNS5,
|
||||
DNS6,DNS6,
|
||||
Normal,正常,
|
||||
Locked,锁定,
|
||||
Update Locked,更新锁定,
|
||||
Transfer Locked,转移锁定,
|
||||
Delete Locked,删除锁定,
|
||||
Renew Locked,续费锁定,
|
||||
Not Real-name Verified,未实名认证,
|
||||
Create Owner Template,新建所有者模板,
|
||||
Owner Name,所有者名称,
|
||||
Real-name Status,实名状态,
|
||||
Contact Information,联系信息,
|
||||
View Details,查看详情,
|
||||
This template is associated with domains and cannot be deleted,该模板已关联域名,无法删除,
|
||||
Owner Details,所有者详细信息,
|
||||
Basic Information,基本信息,
|
||||
Owner Type,所有者类型,
|
||||
Company Name,单位名称,
|
||||
Email,电子邮箱,
|
||||
Phone Number,手机号码,
|
||||
Province,省份,
|
||||
City,城市,
|
||||
ID Information,证件信息,
|
||||
ID Type,证件类型,
|
||||
ID Number,证件号码,
|
||||
Close,关闭,
|
||||
Edit Domain Owner,编辑域名所有者,
|
||||
Individual,个人,
|
||||
Enterprise/Organization,企业/组织,
|
||||
Owner Company Name,所有者单位名称,
|
||||
Please enter company name,请输入单位名称,
|
||||
Last Name,姓,
|
||||
First Name,名,
|
||||
Please enter last name,请输入姓,
|
||||
Please enter first name,请输入名,
|
||||
Please enter email,请输入电子邮箱,
|
||||
Please enter phone number,请输入手机号码,
|
||||
Please enter province,请输入省份,
|
||||
Please enter city,请输入城市,
|
||||
Postal Code,邮编,
|
||||
Please enter postal code,请输入邮编,
|
||||
Please enter address,请输入通讯地址,
|
||||
Real-name Verification in Progress,实名认证中,
|
||||
Real-name Verification Failed,实名认证失败,
|
||||
Real-name Verification Expired,实名认证过期,
|
||||
Pending Review,待审核,
|
||||
ID Card,身份证,
|
||||
Passport,护照,
|
||||
Mainland Travel Permit for Hong Kong and Macao Residents,港澳居民来往内地通行证,
|
||||
Mainland Travel Permit for Taiwan Residents,台湾居民来往大陆通行证,
|
||||
Permanent Residence ID Card for Foreigners,外国人永久居留身份证,
|
||||
Residence Permit for Hong Kong, Macao and Taiwan Residents,港澳台居民居住证,
|
||||
Organization Code Certificate,组织机构代码证,
|
||||
Business License,工商营业执照,
|
||||
Unified Social Credit Code,统一社会信用代码,
|
||||
Site update started,站点更新已启动,
|
||||
Size,尺寸,
|
||||
Servers,服务器,
|
||||
|
||||
|
Can't render this file because it has a wrong number of fields in line 305.
|
Loading…
x
Reference in New Issue
Block a user