feat:IMSSUB界面修改显示,增加参数
This commit is contained in:
@@ -43,6 +43,8 @@ let queryParams = reactive({
|
|||||||
tenantName: '',
|
tenantName: '',
|
||||||
/**移动号 */
|
/**移动号 */
|
||||||
msisdn: '',
|
msisdn: '',
|
||||||
|
/**TAG */
|
||||||
|
tag: undefined,
|
||||||
/**排序字段 */
|
/**排序字段 */
|
||||||
sortField: 'imsi',
|
sortField: 'imsi',
|
||||||
/**排序方式 */
|
/**排序方式 */
|
||||||
@@ -60,6 +62,7 @@ function fnQueryReset() {
|
|||||||
imsiMatch: 'fuzzy',
|
imsiMatch: 'fuzzy',
|
||||||
msisdn: '',
|
msisdn: '',
|
||||||
tenantName: '',
|
tenantName: '',
|
||||||
|
tag: undefined,
|
||||||
sortField: 'imsi',
|
sortField: 'imsi',
|
||||||
sortOrder: 'asc',
|
sortOrder: 'asc',
|
||||||
pageNum: 1,
|
pageNum: 1,
|
||||||
@@ -121,6 +124,13 @@ let tableColumns = ref<ColumnsType>([
|
|||||||
sorter: true,
|
sorter: true,
|
||||||
width: 100,
|
width: 100,
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
title: 'TAG',
|
||||||
|
dataIndex: 'tag',
|
||||||
|
align: 'center',
|
||||||
|
width: 150,
|
||||||
|
key: 'tag'
|
||||||
|
},
|
||||||
{
|
{
|
||||||
title: 'TenantID',
|
title: 'TenantID',
|
||||||
dataIndex: 'tenantID',
|
dataIndex: 'tenantID',
|
||||||
@@ -140,12 +150,6 @@ let tableColumns = ref<ColumnsType>([
|
|||||||
align: 'center',
|
align: 'center',
|
||||||
width: 150,
|
width: 150,
|
||||||
},
|
},
|
||||||
{
|
|
||||||
title: 'TAG',
|
|
||||||
dataIndex: 'tag',
|
|
||||||
align: 'center',
|
|
||||||
width: 150,
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
title: t('common.operate'),
|
title: t('common.operate'),
|
||||||
key: 'imsi',
|
key: 'imsi',
|
||||||
@@ -367,7 +371,7 @@ const modalStateFrom = Form.useForm(
|
|||||||
],
|
],
|
||||||
imsi: [
|
imsi: [
|
||||||
{
|
{
|
||||||
required: computed(() => modalState.from.tag === '0'),
|
required: computed(() => modalState.from.tag === '1'),
|
||||||
message: 'IMSI' + t('common.unableNull')
|
message: 'IMSI' + t('common.unableNull')
|
||||||
},
|
},
|
||||||
{ min: 15, max: 15, message: t('views.neUser.auth.imsiConfirm') },
|
{ min: 15, max: 15, message: t('views.neUser.auth.imsiConfirm') },
|
||||||
@@ -1076,7 +1080,7 @@ onMounted(() => {
|
|||||||
if (res.data.length > 0) {
|
if (res.data.length > 0) {
|
||||||
let arr: Record<string, any>[] = [];
|
let arr: Record<string, any>[] = [];
|
||||||
res.data.forEach(i => {
|
res.data.forEach(i => {
|
||||||
if (i.neType === 'IMS') {
|
if (i.neType === 'UDM') {
|
||||||
arr.push({ value: i.neId, label: i.neName });
|
arr.push({ value: i.neId, label: i.neName });
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
@@ -1110,7 +1114,7 @@ onMounted(() => {
|
|||||||
<a-form :model="queryParams" name="queryParams" layout="horizontal">
|
<a-form :model="queryParams" name="queryParams" layout="horizontal">
|
||||||
<a-row :gutter="16">
|
<a-row :gutter="16">
|
||||||
<a-col :lg="6" :md="12" :xs="24">
|
<a-col :lg="6" :md="12" :xs="24">
|
||||||
<a-form-item :label="t('views.neUser.sub.imsType')" name="neId ">
|
<a-form-item :label="t('views.neUser.sub.neType')" name="neId">
|
||||||
<a-select
|
<a-select
|
||||||
v-model:value="queryParams.neId"
|
v-model:value="queryParams.neId"
|
||||||
:options="neOtions"
|
:options="neOtions"
|
||||||
@@ -1148,6 +1152,19 @@ onMounted(() => {
|
|||||||
:placeholder="t('common.inputPlease')"></a-input>
|
:placeholder="t('common.inputPlease')"></a-input>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
</a-col>
|
</a-col>
|
||||||
|
<a-col :lg="6" :md="12" :xs="24">
|
||||||
|
<a-form-item label="TAG" name="tag">
|
||||||
|
<a-select
|
||||||
|
v-model:value="queryParams.tag"
|
||||||
|
:options="[
|
||||||
|
{ label: 'VoIP', value: '0' },
|
||||||
|
{ label: 'VoLTE', value: '1' }
|
||||||
|
]"
|
||||||
|
:placeholder="t('common.selectPlease')"
|
||||||
|
allow-clear
|
||||||
|
/>
|
||||||
|
</a-form-item>
|
||||||
|
</a-col>
|
||||||
<a-col :lg="6" :md="12" :xs="24">
|
<a-col :lg="6" :md="12" :xs="24">
|
||||||
<a-form-item
|
<a-form-item
|
||||||
:label="t('views.neUser.sub.tenantName')"
|
:label="t('views.neUser.sub.tenantName')"
|
||||||
@@ -1205,25 +1222,25 @@ onMounted(() => {
|
|||||||
{{ t('views.neUser.auth.batchDelText') }}
|
{{ t('views.neUser.auth.batchDelText') }}
|
||||||
</a-button>
|
</a-button>
|
||||||
|
|
||||||
<a-popconfirm
|
<a-popconfirm
|
||||||
:title="t('views.neUser.sub.loadDataConfirm')"
|
:title="t('views.neUser.sub.loadDataConfirm')"
|
||||||
:ok-text="t('common.ok')"
|
:ok-text="t('common.ok')"
|
||||||
:cancel-text="t('common.cancel')"
|
:cancel-text="t('common.cancel')"
|
||||||
:disabled="modalState.loadDataLoading"
|
:disabled="modalState.loadDataLoading"
|
||||||
@confirm="fnLoadData"
|
@confirm="fnLoadData"
|
||||||
>
|
>
|
||||||
<a-button
|
<a-button
|
||||||
type="dashed"
|
type="dashed"
|
||||||
danger
|
danger
|
||||||
:disabled="modalState.loadDataLoading"
|
:disabled="modalState.loadDataLoading"
|
||||||
:loading="modalState.loadDataLoading"
|
:loading="modalState.loadDataLoading"
|
||||||
>
|
>
|
||||||
<template #icon>
|
<template #icon>
|
||||||
<SyncOutlined />
|
<SyncOutlined />
|
||||||
</template>
|
</template>
|
||||||
{{ t('views.neUser.sub.loadData') }}
|
{{ t('views.neUser.sub.loadData') }}
|
||||||
</a-button>
|
</a-button>
|
||||||
</a-popconfirm>
|
</a-popconfirm>
|
||||||
|
|
||||||
<a-button type="dashed" @click.prevent="fnModalUploadImportOpen">
|
<a-button type="dashed" @click.prevent="fnModalUploadImportOpen">
|
||||||
<template #icon>
|
<template #icon>
|
||||||
@@ -1232,52 +1249,52 @@ onMounted(() => {
|
|||||||
{{ t('views.neUser.sub.import') }}
|
{{ t('views.neUser.sub.import') }}
|
||||||
</a-button>
|
</a-button>
|
||||||
|
|
||||||
<a-popconfirm
|
<a-popconfirm
|
||||||
:title="t('views.neUser.sub.exportConfirm')"
|
:title="t('views.neUser.sub.exportConfirm')"
|
||||||
placement="topRight"
|
placement="topRight"
|
||||||
ok-text="TXT"
|
ok-text="TXT"
|
||||||
ok-type="default"
|
ok-type="default"
|
||||||
@confirm="fnExportList('txt')"
|
@confirm="fnExportList('txt')"
|
||||||
>
|
>
|
||||||
<a-button type="dashed">
|
<a-button type="dashed">
|
||||||
<template #icon>
|
<template #icon>
|
||||||
<ExportOutlined />
|
<ExportOutlined />
|
||||||
</template>
|
</template>
|
||||||
{{ t('views.neUser.sub.export') }}
|
{{ t('views.neUser.sub.export') }}
|
||||||
</a-button>
|
</a-button>
|
||||||
</a-popconfirm>
|
</a-popconfirm>
|
||||||
|
|
||||||
<a-button
|
<a-button
|
||||||
type="default"
|
type="default"
|
||||||
danger
|
danger
|
||||||
:disabled="tableState.selectedRowKeys.length <= 0"
|
:disabled="tableState.selectedRowKeys.length <= 0"
|
||||||
:loading="modalState.loadDataLoading"
|
:loading="modalState.loadDataLoading"
|
||||||
@click.prevent="fnRecordDelete('0')"
|
@click.prevent="fnRecordDelete('0')"
|
||||||
>
|
>
|
||||||
<template #icon>
|
<template #icon>
|
||||||
<DeleteOutlined />
|
<DeleteOutlined />
|
||||||
</template>
|
</template>
|
||||||
{{ t('views.neUser.sub.checkDel') }}
|
{{ t('views.neUser.sub.checkDel') }}
|
||||||
</a-button>
|
</a-button>
|
||||||
|
|
||||||
<a-popconfirm
|
<a-popconfirm
|
||||||
:title="t('views.neUser.sub.checkExportConfirm')"
|
:title="t('views.neUser.sub.checkExportConfirm')"
|
||||||
placement="topRight"
|
placement="topRight"
|
||||||
ok-text="TXT"
|
ok-text="TXT"
|
||||||
ok-type="default"
|
ok-type="default"
|
||||||
@confirm="fnRecordExport('txt')"
|
@confirm="fnRecordExport('txt')"
|
||||||
:disabled="tableState.selectedRowKeys.length <= 0"
|
:disabled="tableState.selectedRowKeys.length <= 0"
|
||||||
>
|
>
|
||||||
<a-button
|
<a-button
|
||||||
type="default"
|
type="default"
|
||||||
:disabled="tableState.selectedRowKeys.length <= 0"
|
:disabled="tableState.selectedRowKeys.length <= 0"
|
||||||
>
|
>
|
||||||
<template #icon>
|
<template #icon>
|
||||||
<ExportOutlined />
|
<ExportOutlined />
|
||||||
</template>
|
</template>
|
||||||
{{ t('views.neUser.sub.checkExport') }}
|
{{ t('views.neUser.sub.checkExport') }}
|
||||||
</a-button>
|
</a-button>
|
||||||
</a-popconfirm>
|
</a-popconfirm>
|
||||||
</a-flex>
|
</a-flex>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@@ -1369,6 +1386,9 @@ onMounted(() => {
|
|||||||
: t('views.neUser.sub.disable')
|
: t('views.neUser.sub.disable')
|
||||||
}}
|
}}
|
||||||
</template>
|
</template>
|
||||||
|
<template v-if="column.key === 'tag'">
|
||||||
|
{{ record.tag === '0' || record.tag === 0 ? 'VoIP' : 'VoLTE' }}
|
||||||
|
</template>
|
||||||
<template v-if="column.key === 'imsi'">
|
<template v-if="column.key === 'imsi'">
|
||||||
<a-space :size="8" align="center">
|
<a-space :size="8" align="center">
|
||||||
<a-tooltip>
|
<a-tooltip>
|
||||||
@@ -1388,7 +1408,7 @@ onMounted(() => {
|
|||||||
</a-table>
|
</a-table>
|
||||||
</a-card>
|
</a-card>
|
||||||
|
|
||||||
新增框或修改框
|
<!-- 新增框或修改框-->
|
||||||
<ProModal
|
<ProModal
|
||||||
:drag="true"
|
:drag="true"
|
||||||
:width="800"
|
:width="800"
|
||||||
@@ -1489,8 +1509,8 @@ onMounted(() => {
|
|||||||
<a-select
|
<a-select
|
||||||
v-model:value="modalState.from.tag"
|
v-model:value="modalState.from.tag"
|
||||||
:options="[
|
:options="[
|
||||||
{ label: '0', value: '0' },
|
{ label: 'VoIP', value: '0' },
|
||||||
{ label: '1', value: '1' }
|
{ label: 'VoLTE', value: '1' }
|
||||||
]"
|
]"
|
||||||
:placeholder="t('common.selectPlease')"
|
:placeholder="t('common.selectPlease')"
|
||||||
>
|
>
|
||||||
@@ -1526,100 +1546,100 @@ onMounted(() => {
|
|||||||
</a-form-item>
|
</a-form-item>
|
||||||
</a-form>
|
</a-form>
|
||||||
</ProModal>
|
</ProModal>
|
||||||
<!-- 批量删除-->
|
<!-- 批量删除-->
|
||||||
<ProModal
|
<ProModal
|
||||||
:drag="true"
|
:drag="true"
|
||||||
:destroyOnClose="true"
|
:destroyOnClose="true"
|
||||||
style="top: 0px"
|
style="top: 0px"
|
||||||
:keyboard="false"
|
:keyboard="false"
|
||||||
:mask-closable="false"
|
:mask-closable="false"
|
||||||
:open="modalState.openByBatchDel"
|
:open="modalState.openByBatchDel"
|
||||||
:title="modalState.title"
|
:title="modalState.title"
|
||||||
:confirm-loading="modalState.confirmLoading"
|
:confirm-loading="modalState.confirmLoading"
|
||||||
@ok="fnBatchDelModalOk"
|
@ok="fnBatchDelModalOk"
|
||||||
@cancel="fnBatchDelModalCancel"
|
@cancel="fnBatchDelModalCancel"
|
||||||
>
|
>
|
||||||
<a-form
|
<a-form
|
||||||
name="modalStateBatchDelFrom"
|
name="modalStateBatchDelFrom"
|
||||||
layout="horizontal"
|
layout="horizontal"
|
||||||
:label-col="{ span: 8 }"
|
:label-col="{ span: 8 }"
|
||||||
:labelWrap="true"
|
:labelWrap="true"
|
||||||
>
|
>
|
||||||
<a-row>
|
<a-row>
|
||||||
<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.neUser.sub.startIMSI')"
|
:label="t('views.neUser.sub.startIMSI')"
|
||||||
name="imsi"
|
name="imsi"
|
||||||
v-bind="modalStateBatchDelFrom.validateInfos.imsi"
|
v-bind="modalStateBatchDelFrom.validateInfos.imsi"
|
||||||
>
|
|
||||||
<a-input
|
|
||||||
v-model:value="modalState.BatchDelForm.imsi"
|
|
||||||
allow-clear
|
|
||||||
:maxlength="15"
|
|
||||||
>
|
|
||||||
<template #prefix>
|
|
||||||
<a-tooltip placement="topLeft">
|
|
||||||
<template #title>
|
|
||||||
{{ t('views.neUser.sub.imsiTip') }}<br />
|
|
||||||
{{ t('views.neUser.sub.imsiTip1') }}<br />
|
|
||||||
{{ t('views.neUser.sub.imsiTip2') }}<br />
|
|
||||||
{{ t('views.neUser.sub.imsiTip3') }}
|
|
||||||
</template>
|
|
||||||
<InfoCircleOutlined style="opacity: 0.45; color: inherit" />
|
|
||||||
</a-tooltip>
|
|
||||||
</template>
|
|
||||||
</a-input>
|
|
||||||
</a-form-item>
|
|
||||||
</a-col>
|
|
||||||
<a-col :lg="24" :md="24" :xs="24">
|
|
||||||
<a-form-item
|
|
||||||
:label="t('views.neUser.sub.numDel')"
|
|
||||||
name="num"
|
|
||||||
v-bind="modalStateBatchDelFrom.validateInfos.num"
|
|
||||||
>
|
|
||||||
<a-input-number
|
|
||||||
v-model:value="modalState.BatchDelForm.num"
|
|
||||||
style="width: 100%"
|
|
||||||
:min="1"
|
|
||||||
:max="10000"
|
|
||||||
placeholder="<=10000"
|
|
||||||
></a-input-number>
|
|
||||||
</a-form-item>
|
|
||||||
</a-col>
|
|
||||||
</a-row>
|
|
||||||
</a-form>
|
|
||||||
</ProModal>
|
|
||||||
|
|
||||||
<!-- 上传导入表格数据文件框 -->
|
|
||||||
<UploadModal
|
|
||||||
:title="uploadImportState.title"
|
|
||||||
:loading="uploadImportState.loading"
|
|
||||||
@upload="fnModalUploadImportUpload"
|
|
||||||
@close="fnModalUploadImportClose"
|
|
||||||
v-model:open="uploadImportState.open"
|
|
||||||
:ext="['.txt']"
|
|
||||||
:size="10"
|
|
||||||
>
|
|
||||||
<template #default>
|
|
||||||
<a-alert
|
|
||||||
:message="uploadImportState.msg"
|
|
||||||
:type="uploadImportState.hasFail ? 'warning' : 'info'"
|
|
||||||
v-show="uploadImportState.msg.length > 0"
|
|
||||||
>
|
>
|
||||||
<template #action>
|
<a-input
|
||||||
<a-button
|
v-model:value="modalState.BatchDelForm.imsi"
|
||||||
size="small"
|
allow-clear
|
||||||
type="link"
|
:maxlength="15"
|
||||||
danger
|
>
|
||||||
@click="fnModalUploadImportFailReason"
|
<template #prefix>
|
||||||
v-if="uploadImportState.hasFail"
|
<a-tooltip placement="topLeft">
|
||||||
>
|
<template #title>
|
||||||
{{ t('views.neUser.auth.importFail') }}
|
{{ t('views.neUser.sub.imsiTip') }}<br />
|
||||||
</a-button>
|
{{ t('views.neUser.sub.imsiTip1') }}<br />
|
||||||
</template>
|
{{ t('views.neUser.sub.imsiTip2') }}<br />
|
||||||
</a-alert>
|
{{ t('views.neUser.sub.imsiTip3') }}
|
||||||
|
</template>
|
||||||
|
<InfoCircleOutlined style="opacity: 0.45; color: inherit" />
|
||||||
|
</a-tooltip>
|
||||||
|
</template>
|
||||||
|
</a-input>
|
||||||
|
</a-form-item>
|
||||||
|
</a-col>
|
||||||
|
<a-col :lg="24" :md="24" :xs="24">
|
||||||
|
<a-form-item
|
||||||
|
:label="t('views.neUser.sub.numDel')"
|
||||||
|
name="num"
|
||||||
|
v-bind="modalStateBatchDelFrom.validateInfos.num"
|
||||||
|
>
|
||||||
|
<a-input-number
|
||||||
|
v-model:value="modalState.BatchDelForm.num"
|
||||||
|
style="width: 100%"
|
||||||
|
:min="1"
|
||||||
|
:max="10000"
|
||||||
|
placeholder="<=10000"
|
||||||
|
></a-input-number>
|
||||||
|
</a-form-item>
|
||||||
|
</a-col>
|
||||||
|
</a-row>
|
||||||
|
</a-form>
|
||||||
|
</ProModal>
|
||||||
|
|
||||||
|
<!-- 上传导入表格数据文件框 -->
|
||||||
|
<UploadModal
|
||||||
|
:title="uploadImportState.title"
|
||||||
|
:loading="uploadImportState.loading"
|
||||||
|
@upload="fnModalUploadImportUpload"
|
||||||
|
@close="fnModalUploadImportClose"
|
||||||
|
v-model:open="uploadImportState.open"
|
||||||
|
:ext="['.txt']"
|
||||||
|
:size="10"
|
||||||
|
>
|
||||||
|
<template #default>
|
||||||
|
<a-alert
|
||||||
|
:message="uploadImportState.msg"
|
||||||
|
:type="uploadImportState.hasFail ? 'warning' : 'info'"
|
||||||
|
v-show="uploadImportState.msg.length > 0"
|
||||||
|
>
|
||||||
|
<template #action>
|
||||||
|
<a-button
|
||||||
|
size="small"
|
||||||
|
type="link"
|
||||||
|
danger
|
||||||
|
@click="fnModalUploadImportFailReason"
|
||||||
|
v-if="uploadImportState.hasFail"
|
||||||
|
>
|
||||||
|
{{ t('views.neUser.auth.importFail') }}
|
||||||
|
</a-button>
|
||||||
</template>
|
</template>
|
||||||
</UploadModal>
|
</a-alert>
|
||||||
|
</template>
|
||||||
|
</UploadModal>
|
||||||
</PageContainer>
|
</PageContainer>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user