租户管理界面

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

View File

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

View File

@@ -103,6 +103,13 @@ let tableColumns: ColumnsType = [
align: 'center',
width: 150,
},
{
title: t('views.system.dept.type'),
dataIndex: 'type',
key: 'type',
align: 'center',
width: 150,
},
{
title: t('views.system.dept.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) {
tableState.size = key as SizeType;
@@ -169,6 +184,8 @@ let modalState: ModalStateType = reactive({
ancestors: '',
parentName: null,
phone: '',
key: '',
type: '',
status: '0',
},
confirmLoading: false,
@@ -193,20 +210,6 @@ const modalStateFrom = Form.useForm(
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-col :lg="24" :md="24" :xs="24">
<a-form-item
:label="t('views.system.dept.admin')"
name="leader"
:label="t('views.system.dept.type')"
name="type"
:label-col="{ span: 3 }"
:labelWrap="true"
>
{{ modalState.from.leader }}
</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 }}
{{ modalState.from.type }}
</a-form-item>
</a-col>
</a-row>
@@ -776,43 +769,29 @@ onMounted(() => {
</a-row>
<a-row :gutter="16">
<a-col :span="24">
<a-col :span="12">
<a-form-item
:label="t('views.system.dept.admin')"
name="leader"
v-bind="modalStateFrom.validateInfos.leader"
:label-col="{ span: 3 }"
:label="t('views.system.dept.type')"
name="type"
:labelWrap="true"
>
<a-input
v-model:value="modalState.from.leader"
<a-select
v-model:value="modalState.from.type"
allow-clear
></a-input>
:options="modalStateFromOption.tenantType"
>
</a-select>
</a-form-item>
</a-col>
<a-col :lg="12" :md="12" :xs="24">
<a-col :lg="24" :md="24" :xs="24">
<a-form-item
:label="t('views.system.dept.phone')"
name="phone"
v-bind="modalStateFrom.validateInfos.phone"
:label="t('views.system.dept.key')"
name="key"
:label-col="{ span: 3 }"
>
<a-input
v-model:value="modalState.from.phone"
v-model:value="modalState.from.key"
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-form-item>
</a-col>
@@ -822,5 +801,4 @@ onMounted(() => {
</PageContainer>
</template>
<style lang="less" scoped>
</style>
<style lang="less" scoped></style>