租户管理界面

This commit is contained in:
lai
2024-06-06 15:51:59 +08:00
parent 5c31093c28
commit faa3fa546b
3 changed files with 58 additions and 70 deletions

View File

@@ -1761,23 +1761,28 @@ export default {
batchCancel:'Batch cancellation of authorization', batchCancel:'Batch cancellation of authorization',
}, },
dept:{ dept:{
classInfo:' Department Information', classInfo:' Tenant Information',
className:'Department Name', className:'Name',
classId:'Department Number', classId:'Number',
classSort:'Department Sorting', classSort:'Sorting',
status:'Position Status', status:'Status',
type:'Type',
createTime:'Creation Time', createTime:'Creation Time',
highClass:'Higher Office', highClass:'Root Level',
key:'Key',
emailTip:'Please input the correct email address', emailTip:'Please input the correct email address',
phoneTip:'Please enter the correct phone number', phoneTip:'Please enter the correct phone number',
node:'Root Node', node:'Root Node',
delSure:'Are you sure to delete the data item with department number [{deptId}]?', delSure:'Are you sure to delete the data item with department number [{deptId}]?',
open:'Exhibition', open:'Exhibition',
close:'Fold', close:'Fold',
addClass:'Add new sub-department', addClass:'Add Tenant',
admin:'Principal', admin:'Principal',
phone:'Contact Number', phone:'Contact Number',
email:'Mail', email:'Mail',
SDSST:'Network Slice Rental',
APN:'APN Rental',
IMSI:'Card Rental',
}, },
post:{ post:{
positionInfo:'Position Information', positionInfo:'Position Information',

View File

@@ -1761,23 +1761,28 @@ export default {
batchCancel:'批量取消授权', batchCancel:'批量取消授权',
}, },
dept:{ dept:{
classInfo:'部门信息', classInfo:'租户信息',
className:'部门名称', className:'名称',
classId:'部门编号', classId:'编号',
classSort:'部门排序', classSort:'排序',
status:'岗位状态', status:'状态',
type:'类型',
createTime:'创建时间', createTime:'创建时间',
highClass:'上级部门', highClass:'根级',
key:'标识',
emailTip:'请输入正确的邮箱地址', emailTip:'请输入正确的邮箱地址',
phoneTip:'请输入正确的手机号码', phoneTip:'请输入正确的手机号码',
node:'根节点', node:'根节点',
delSure:'确认删除部门编号为 【{deptId}】 的数据项?', delSure:'确认删除部门编号为 【{deptId}】 的数据项?',
open:'展', open:'展',
close:'折', close:'折',
addClass:'新增子部门', addClass:'新增租户',
admin:'负责人', admin:'负责人',
phone:'联系电话', phone:'联系电话',
email:'邮箱', email:'邮箱',
SDSST:'网络切片租用',
APN:'APN租用',
IMSI:'卡租用',
}, },
post:{ post:{
positionInfo:'岗位信息', positionInfo:'岗位信息',

View File

@@ -103,6 +103,13 @@ let tableColumns: ColumnsType = [
align: 'center', align: 'center',
width: 150, width: 150,
}, },
{
title: t('views.system.dept.type'),
dataIndex: 'type',
key: 'type',
align: 'center',
width: 150,
},
{ {
title: t('views.system.dept.createTime'), title: t('views.system.dept.createTime'),
dataIndex: 'createTime', dataIndex: 'createTime',
@@ -120,6 +127,14 @@ let tableColumns: ColumnsType = [
}, },
]; ];
const modalStateFromOption = reactive({
tenantType: [
{ label: t('views.system.dept.SDSST'), value: 'SD-SST' },
{ label: t('views.system.dept.APN'), value: 'APN' },
{ label: t('views.system.dept.IMSI'), value: 'IMSI' },
]
})
/**表格紧凑型变更操作 */ /**表格紧凑型变更操作 */
function fnTableSize({ key }: MenuInfo) { function fnTableSize({ key }: MenuInfo) {
tableState.size = key as SizeType; tableState.size = key as SizeType;
@@ -169,6 +184,8 @@ let modalState: ModalStateType = reactive({
ancestors: '', ancestors: '',
parentName: null, parentName: null,
phone: '', phone: '',
key: '',
type: '',
status: '0', status: '0',
}, },
confirmLoading: false, confirmLoading: false,
@@ -193,20 +210,6 @@ const modalStateFrom = Form.useForm(
message: t('views.system.dept.className') + t('common.unableNull'), message: t('views.system.dept.className') + t('common.unableNull'),
}, },
], ],
email: [
{
required: false,
pattern: regExpEmail,
message: t('views.system.dept.emailTip'),
},
],
phone: [
{
required: false,
pattern: regExpMobile,
message: t('views.system.dept.phoneTip'),
},
],
}) })
); );
@@ -666,22 +669,12 @@ onMounted(() => {
<a-row :gutter="16"> <a-row :gutter="16">
<a-col :lg="24" :md="24" :xs="24"> <a-col :lg="24" :md="24" :xs="24">
<a-form-item <a-form-item
:label="t('views.system.dept.admin')" :label="t('views.system.dept.type')"
name="leader" name="type"
:label-col="{ span: 3 }" :label-col="{ span: 3 }"
:labelWrap="true" :labelWrap="true"
> >
{{ modalState.from.leader }} {{ modalState.from.type }}
</a-form-item>
</a-col>
<a-col :lg="12" :md="12" :xs="24">
<a-form-item :label="t('views.system.dept.phone')" name="phone">
{{ modalState.from.phone }}
</a-form-item>
</a-col>
<a-col :lg="12" :md="12" :xs="24">
<a-form-item :label="t('views.system.dept.email')" name="email">
{{ modalState.from.email }}
</a-form-item> </a-form-item>
</a-col> </a-col>
</a-row> </a-row>
@@ -776,43 +769,29 @@ onMounted(() => {
</a-row> </a-row>
<a-row :gutter="16"> <a-row :gutter="16">
<a-col :span="24"> <a-col :span="12">
<a-form-item <a-form-item
:label="t('views.system.dept.admin')" :label="t('views.system.dept.type')"
name="leader" name="type"
v-bind="modalStateFrom.validateInfos.leader"
:label-col="{ span: 3 }"
:labelWrap="true" :labelWrap="true"
> >
<a-input <a-select
v-model:value="modalState.from.leader" v-model:value="modalState.from.type"
allow-clear allow-clear
></a-input> :options="modalStateFromOption.tenantType"
>
</a-select>
</a-form-item> </a-form-item>
</a-col> </a-col>
<a-col :lg="12" :md="12" :xs="24"> <a-col :lg="24" :md="24" :xs="24">
<a-form-item <a-form-item
:label="t('views.system.dept.phone')" :label="t('views.system.dept.key')"
name="phone" name="key"
v-bind="modalStateFrom.validateInfos.phone" :label-col="{ span: 3 }"
> >
<a-input <a-input
v-model:value="modalState.from.phone" v-model:value="modalState.from.key"
allow-clear allow-clear
:maxlength="11"
></a-input>
</a-form-item>
</a-col>
<a-col :lg="12" :md="12" :xs="24">
<a-form-item
:label="t('views.system.dept.email')"
name="email"
v-bind="modalStateFrom.validateInfos.email"
>
<a-input
v-model:value="modalState.from.email"
allow-clear
:maxlength="40"
></a-input> ></a-input>
</a-form-item> </a-form-item>
</a-col> </a-col>
@@ -822,5 +801,4 @@ onMounted(() => {
</PageContainer> </PageContainer>
</template> </template>
<style lang="less" scoped> <style lang="less" scoped></style>
</style>