添加租户自动补全
This commit is contained in:
@@ -21,6 +21,7 @@ import { parseDateToStr, parseDuration } from '@/utils/date-utils';
|
|||||||
import { OptionsType, WS } from '@/plugins/ws-websocket';
|
import { OptionsType, WS } from '@/plugins/ws-websocket';
|
||||||
import saveAs from 'file-saver';
|
import saveAs from 'file-saver';
|
||||||
import PQueue from 'p-queue';
|
import PQueue from 'p-queue';
|
||||||
|
import { listTenant } from '@/api/system/tenant';
|
||||||
import useUserStore from '@/store/modules/user';
|
import useUserStore from '@/store/modules/user';
|
||||||
const { t } = useI18n();
|
const { t } = useI18n();
|
||||||
const { getDict } = useDictStore();
|
const { getDict } = useDictStore();
|
||||||
@@ -43,6 +44,7 @@ let queryRangePicker = ref<[string, string]>(['', '']);
|
|||||||
|
|
||||||
/**查询参数 */
|
/**查询参数 */
|
||||||
let queryParams = reactive({
|
let queryParams = reactive({
|
||||||
|
tenantNameArr: <Record<string, any>[]>[],
|
||||||
/**网元类型 */
|
/**网元类型 */
|
||||||
neType: 'IMS',
|
neType: 'IMS',
|
||||||
neId: '001',
|
neId: '001',
|
||||||
@@ -66,6 +68,7 @@ let queryParams = reactive({
|
|||||||
function fnQueryReset() {
|
function fnQueryReset() {
|
||||||
recordTypes.value = ['MOC'];
|
recordTypes.value = ['MOC'];
|
||||||
queryParams = Object.assign(queryParams, {
|
queryParams = Object.assign(queryParams, {
|
||||||
|
tenantNameArr: [],
|
||||||
recordType: 'MOC',
|
recordType: 'MOC',
|
||||||
callerParty: '',
|
callerParty: '',
|
||||||
calledParty: '',
|
calledParty: '',
|
||||||
@@ -449,6 +452,11 @@ function wsMessage(res: Record<string, any>) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//自动完成框不区分大小写
|
||||||
|
function filterOption(input: string, option: any) {
|
||||||
|
return option.value.toUpperCase().indexOf(input.toUpperCase()) >= 0;
|
||||||
|
}
|
||||||
|
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
// 初始字典数据
|
// 初始字典数据
|
||||||
Promise.allSettled([getDict('cdr_sip_code'), getDict('cdr_call_type')])
|
Promise.allSettled([getDict('cdr_sip_code'), getDict('cdr_call_type')])
|
||||||
@@ -464,6 +472,21 @@ onMounted(() => {
|
|||||||
// 获取列表数据
|
// 获取列表数据
|
||||||
fnGetList();
|
fnGetList();
|
||||||
});
|
});
|
||||||
|
|
||||||
|
//查询租户
|
||||||
|
listTenant({ parentId: 0 }).then(res => {
|
||||||
|
if (res.code === RESULT_CODE_SUCCESS && Array.isArray(res.data)) {
|
||||||
|
queryParams.tenantNameArr = []; //上面置为空数组时会报错 故在此
|
||||||
|
res.data.forEach((item: any) => {
|
||||||
|
if (item.parentId === '0') {
|
||||||
|
queryParams.tenantNameArr.push({
|
||||||
|
value: item.tenantName,
|
||||||
|
label: item.tenantName,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
onBeforeUnmount(() => {
|
onBeforeUnmount(() => {
|
||||||
@@ -500,17 +523,6 @@ onBeforeUnmount(() => {
|
|||||||
</a-form-item>
|
</a-form-item>
|
||||||
</a-col>
|
</a-col>
|
||||||
|
|
||||||
<a-col :lg="8" :md="12" :xs="24">
|
|
||||||
<a-form-item
|
|
||||||
:label="t('views.neUser.sub.tenantName')"
|
|
||||||
name="tenantName "
|
|
||||||
>
|
|
||||||
<a-input
|
|
||||||
allow-clear
|
|
||||||
v-model:value="queryParams.tenantName"
|
|
||||||
></a-input>
|
|
||||||
</a-form-item>
|
|
||||||
</a-col>
|
|
||||||
<a-col :lg="8" :md="12" :xs="24">
|
<a-col :lg="8" :md="12" :xs="24">
|
||||||
<a-form-item
|
<a-form-item
|
||||||
:label="t('views.dashboard.cdr.called')"
|
:label="t('views.dashboard.cdr.called')"
|
||||||
@@ -551,6 +563,18 @@ onBeforeUnmount(() => {
|
|||||||
></a-range-picker>
|
></a-range-picker>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
</a-col>
|
</a-col>
|
||||||
|
<a-col :lg="8" :md="12" :xs="24">
|
||||||
|
<a-form-item
|
||||||
|
:label="t('views.neUser.sub.tenantName')"
|
||||||
|
name="tenantName "
|
||||||
|
>
|
||||||
|
<a-auto-complete
|
||||||
|
v-model:value="queryParams.tenantName"
|
||||||
|
:options="queryParams.tenantNameArr"
|
||||||
|
:filter-option="filterOption"
|
||||||
|
></a-auto-complete>
|
||||||
|
</a-form-item>
|
||||||
|
</a-col>
|
||||||
<a-col :lg="4" :md="12" :xs="24">
|
<a-col :lg="4" :md="12" :xs="24">
|
||||||
<a-form-item>
|
<a-form-item>
|
||||||
<a-space :size="8">
|
<a-space :size="8">
|
||||||
|
|||||||
@@ -19,6 +19,8 @@ import { parseDateToStr } from '@/utils/date-utils';
|
|||||||
import { OptionsType, WS } from '@/plugins/ws-websocket';
|
import { OptionsType, WS } from '@/plugins/ws-websocket';
|
||||||
import PQueue from 'p-queue';
|
import PQueue from 'p-queue';
|
||||||
import saveAs from 'file-saver';
|
import saveAs from 'file-saver';
|
||||||
|
import { listTenant } from '@/api/system/tenant';
|
||||||
|
|
||||||
const { t } = useI18n();
|
const { t } = useI18n();
|
||||||
const ws = new WS();
|
const ws = new WS();
|
||||||
const queue = new PQueue({ concurrency: 1, autoStart: true });
|
const queue = new PQueue({ concurrency: 1, autoStart: true });
|
||||||
@@ -28,6 +30,7 @@ let queryRangePicker = ref<[string, string]>(['', '']);
|
|||||||
|
|
||||||
/**查询参数 */
|
/**查询参数 */
|
||||||
let queryParams = reactive({
|
let queryParams = reactive({
|
||||||
|
tenantNameArr: <Record<string, any>[]>[],
|
||||||
/**网元类型 */
|
/**网元类型 */
|
||||||
neType: 'SMF',
|
neType: 'SMF',
|
||||||
neId: '001',
|
neId: '001',
|
||||||
@@ -49,6 +52,7 @@ let queryParams = reactive({
|
|||||||
/**查询参数重置 */
|
/**查询参数重置 */
|
||||||
function fnQueryReset() {
|
function fnQueryReset() {
|
||||||
queryParams = Object.assign(queryParams, {
|
queryParams = Object.assign(queryParams, {
|
||||||
|
tenantNameArr: [],
|
||||||
subscriberID: '',
|
subscriberID: '',
|
||||||
/** 租户名称*/
|
/** 租户名称*/
|
||||||
tenantName: '',
|
tenantName: '',
|
||||||
@@ -460,10 +464,29 @@ function wsMessage(res: Record<string, any>) {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
//自动完成框不区分大小写
|
||||||
|
function filterOption(input: string, option: any) {
|
||||||
|
return option.value.toUpperCase().indexOf(input.toUpperCase()) >= 0;
|
||||||
|
}
|
||||||
|
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
// 获取列表数据
|
// 获取列表数据
|
||||||
fnGetList();
|
fnGetList();
|
||||||
|
|
||||||
|
//查询租户
|
||||||
|
listTenant({ parentId: 0 }).then(res => {
|
||||||
|
if (res.code === RESULT_CODE_SUCCESS && Array.isArray(res.data)) {
|
||||||
|
queryParams.tenantNameArr = []; //上面置为空数组时会报错 故在此
|
||||||
|
res.data.forEach((item: any) => {
|
||||||
|
if (item.parentId === '0') {
|
||||||
|
queryParams.tenantNameArr.push({
|
||||||
|
value: item.tenantName,
|
||||||
|
label: item.tenantName,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
onBeforeUnmount(() => {
|
onBeforeUnmount(() => {
|
||||||
@@ -512,15 +535,16 @@ onBeforeUnmount(() => {
|
|||||||
></a-range-picker>
|
></a-range-picker>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
</a-col>
|
</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')"
|
||||||
name="tenantName "
|
name="tenantName "
|
||||||
>
|
>
|
||||||
<a-input
|
<a-auto-complete
|
||||||
allow-clear
|
|
||||||
v-model:value="queryParams.tenantName"
|
v-model:value="queryParams.tenantName"
|
||||||
></a-input>
|
:options="queryParams.tenantNameArr"
|
||||||
|
:filter-option="filterOption"
|
||||||
|
></a-auto-complete>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
</a-col>
|
</a-col>
|
||||||
<a-col :lg="4" :md="12" :xs="24">
|
<a-col :lg="4" :md="12" :xs="24">
|
||||||
|
|||||||
Reference in New Issue
Block a user