del: 删除旧参数配置页面相关接口请求
This commit is contained in:
@@ -2,315 +2,8 @@ import {
|
|||||||
RESULT_CODE_ERROR,
|
RESULT_CODE_ERROR,
|
||||||
RESULT_CODE_SUCCESS,
|
RESULT_CODE_SUCCESS,
|
||||||
RESULT_MSG_ERROR,
|
RESULT_MSG_ERROR,
|
||||||
RESULT_MSG_SUCCESS,
|
|
||||||
} from '@/constants/result-constants';
|
} from '@/constants/result-constants';
|
||||||
import { language, request } from '@/plugins/http-fetch';
|
import { language, request } from '@/plugins/http-fetch';
|
||||||
import { parseObjLineToHump } from '@/utils/parse-utils';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 查询配置参数标签栏
|
|
||||||
* @param neType 网元类型
|
|
||||||
* @returns object
|
|
||||||
*/
|
|
||||||
export async function getParamConfigTopTab(neType: string) {
|
|
||||||
// 发起请求
|
|
||||||
const result = await request({
|
|
||||||
url: `/api/rest/databaseManagement/v1/elementType/omc_db/objectType/param_config`,
|
|
||||||
method: 'get',
|
|
||||||
params: {
|
|
||||||
SQL: `SELECT id,top_display,top_tag,method FROM param_config WHERE ne_type = '${neType}' ORDER BY id ASC`,
|
|
||||||
},
|
|
||||||
});
|
|
||||||
// 解析数据
|
|
||||||
if (result.code === RESULT_CODE_SUCCESS && Array.isArray(result.data.data)) {
|
|
||||||
let data = result.data.data[0];
|
|
||||||
data = data['param_config'];
|
|
||||||
if (Array.isArray(data)) {
|
|
||||||
return Object.assign(result, {
|
|
||||||
data: parseObjLineToHump(data),
|
|
||||||
});
|
|
||||||
}
|
|
||||||
return Object.assign(result, {
|
|
||||||
data: [],
|
|
||||||
});
|
|
||||||
}
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 查询配置参数标签栏对应信息和规则
|
|
||||||
* @param neType 网元类型
|
|
||||||
* @param topTag
|
|
||||||
* @param neId
|
|
||||||
* @returns object { wrRule, dataArr }
|
|
||||||
*/
|
|
||||||
async function getParamConfigInfoAndRule(
|
|
||||||
neType: string,
|
|
||||||
topTag: string,
|
|
||||||
neId: string
|
|
||||||
) {
|
|
||||||
return await Promise.allSettled([
|
|
||||||
// 获取参数规则
|
|
||||||
request({
|
|
||||||
url: `/api/rest/databaseManagement/v1/elementType/omc_db/objectType/param_config`,
|
|
||||||
method: 'get',
|
|
||||||
params: {
|
|
||||||
SQL: `SELECT param_json FROM param_config WHERE ne_type = '${neType}' AND top_tag='${topTag}'`,
|
|
||||||
},
|
|
||||||
}),
|
|
||||||
// 获取对应信息
|
|
||||||
request({
|
|
||||||
url: `/api/rest/systemManagement/v1/elementType/${neType.toLowerCase()}/objectType/config/${topTag}`,
|
|
||||||
method: 'get',
|
|
||||||
params: {
|
|
||||||
ne_id: neId,
|
|
||||||
},
|
|
||||||
}),
|
|
||||||
]).then(resArr => {
|
|
||||||
let wrRule: Record<string, any> = {};
|
|
||||||
// 规则数据
|
|
||||||
if (resArr[0].status === 'fulfilled') {
|
|
||||||
const itemV = resArr[0].value;
|
|
||||||
// 解析数据
|
|
||||||
if (
|
|
||||||
itemV.code === RESULT_CODE_SUCCESS &&
|
|
||||||
Array.isArray(itemV.data?.data)
|
|
||||||
) {
|
|
||||||
let itemData = itemV.data.data;
|
|
||||||
const data = itemData[0]['param_config'];
|
|
||||||
if (Array.isArray(data)) {
|
|
||||||
const v = data[0]['param_json'];
|
|
||||||
try {
|
|
||||||
itemData = parseObjLineToHump(JSON.parse(v));
|
|
||||||
wrRule = itemData;
|
|
||||||
} catch (error) {
|
|
||||||
console.error(error);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
let dataArr: Record<string, any>[] = [];
|
|
||||||
// 对应信息
|
|
||||||
if (resArr[1].status === 'fulfilled') {
|
|
||||||
const itemV = resArr[1].value;
|
|
||||||
// 解析数据
|
|
||||||
if (
|
|
||||||
itemV.code === RESULT_CODE_SUCCESS &&
|
|
||||||
Array.isArray(itemV.data?.data)
|
|
||||||
) {
|
|
||||||
let itemData = itemV.data.data;
|
|
||||||
dataArr = parseObjLineToHump(itemData);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return { wrRule, dataArr };
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 查询配置参数标签栏对应信息-表单结构处理
|
|
||||||
* @param neType 网元类型
|
|
||||||
* @param topTag
|
|
||||||
* @param neId
|
|
||||||
* @returns object
|
|
||||||
*/
|
|
||||||
export async function getParamConfigInfoForm(
|
|
||||||
neType: string,
|
|
||||||
topTag: string,
|
|
||||||
neId: string
|
|
||||||
) {
|
|
||||||
const { wrRule, dataArr } = await getParamConfigInfoAndRule(
|
|
||||||
neType,
|
|
||||||
topTag,
|
|
||||||
neId
|
|
||||||
);
|
|
||||||
|
|
||||||
// 拼装数据
|
|
||||||
const result = {
|
|
||||||
code: RESULT_CODE_SUCCESS,
|
|
||||||
msg: RESULT_MSG_SUCCESS,
|
|
||||||
data: {
|
|
||||||
type: 'list' as 'list' | 'array',
|
|
||||||
data: [] as Record<string, any>[],
|
|
||||||
dataRule: {},
|
|
||||||
},
|
|
||||||
};
|
|
||||||
|
|
||||||
// kv单列表
|
|
||||||
if (Reflect.has(wrRule, 'list')) {
|
|
||||||
result.data.type = 'list';
|
|
||||||
const ruleArr = Object.freeze(wrRule['list']);
|
|
||||||
|
|
||||||
// 列表项数据
|
|
||||||
const dataList = [];
|
|
||||||
for (const item of dataArr) {
|
|
||||||
for (const key in item) {
|
|
||||||
// 规则为准
|
|
||||||
for (const rule of ruleArr) {
|
|
||||||
if (rule['name'] === key) {
|
|
||||||
const ruleItem = Object.assign({ optional: 'true' }, rule, {
|
|
||||||
value: item[key],
|
|
||||||
});
|
|
||||||
dataList.push(ruleItem);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
result.data.data = dataList;
|
|
||||||
}
|
|
||||||
// 多列表
|
|
||||||
if (Reflect.has(wrRule, 'array')) {
|
|
||||||
result.data.type = 'array';
|
|
||||||
const ruleArr = Object.freeze(wrRule['array']);
|
|
||||||
// 列表项数据
|
|
||||||
const dataArray = [];
|
|
||||||
for (const item of dataArr) {
|
|
||||||
const index = item['index'];
|
|
||||||
let record: Record<string, any>[] = [];
|
|
||||||
for (const key in item) {
|
|
||||||
// 规则为准
|
|
||||||
for (const rule of ruleArr) {
|
|
||||||
if (rule['name'] === key) {
|
|
||||||
const ruleItem = Object.assign({ optional: 'true' }, rule, {
|
|
||||||
value: item[key],
|
|
||||||
});
|
|
||||||
record.push(ruleItem);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
dataArray.push({ title: `Index-${index}`, key: index, record });
|
|
||||||
}
|
|
||||||
result.data.data = dataArray;
|
|
||||||
|
|
||||||
// 无数据时,用于新增
|
|
||||||
result.data.dataRule = { title: `Index-0`, key: 0, record: ruleArr };
|
|
||||||
}
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 查询配置参数标签栏对应信息
|
|
||||||
* @param neType 网元类型
|
|
||||||
* @param topTag
|
|
||||||
* @param neId
|
|
||||||
* @returns object
|
|
||||||
*/
|
|
||||||
export async function getParamConfigInfo(
|
|
||||||
neType: string,
|
|
||||||
topTag: string,
|
|
||||||
neId: string
|
|
||||||
) {
|
|
||||||
// 发起请求
|
|
||||||
const result = await request({
|
|
||||||
url: `/api/rest/systemManagement/v1/elementType/${neType.toLowerCase()}/objectType/config/${topTag}`,
|
|
||||||
method: 'get',
|
|
||||||
params: {
|
|
||||||
ne_id: neId,
|
|
||||||
},
|
|
||||||
});
|
|
||||||
// 解析数据
|
|
||||||
if (result.code === RESULT_CODE_SUCCESS && Array.isArray(result.data.data)) {
|
|
||||||
return Object.assign(result, {
|
|
||||||
data: parseObjLineToHump(result.data.data),
|
|
||||||
});
|
|
||||||
}
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 查询配置参数标签栏对应信息子节点
|
|
||||||
* @param neType 网元类型
|
|
||||||
* @param topTag
|
|
||||||
* @param neId
|
|
||||||
* @param loc 子节点(index/字段) 1/dnnList
|
|
||||||
* @returns
|
|
||||||
*/
|
|
||||||
export async function getParamConfigInfoChild(
|
|
||||||
neType: string,
|
|
||||||
topTag: string,
|
|
||||||
neId: string,
|
|
||||||
loc: string
|
|
||||||
) {
|
|
||||||
// 发起请求
|
|
||||||
const result = await request({
|
|
||||||
url: `/api/rest/systemManagement/v1/elementType/${neType.toLowerCase()}/objectType/config/${topTag}`,
|
|
||||||
method: 'get',
|
|
||||||
params: {
|
|
||||||
ne_id: neId,
|
|
||||||
loc: loc,
|
|
||||||
},
|
|
||||||
});
|
|
||||||
// 解析数据
|
|
||||||
if (result.code === RESULT_CODE_SUCCESS && Array.isArray(result.data.data)) {
|
|
||||||
return Object.assign(result, {
|
|
||||||
data: parseObjLineToHump(result.data.data),
|
|
||||||
});
|
|
||||||
}
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 修改配置参数标签栏对应信息
|
|
||||||
* @param args 对象 {neType,neId,topTag,loc}
|
|
||||||
* @param data 对象 {修改的数据kv}
|
|
||||||
* @returns object
|
|
||||||
*/
|
|
||||||
export function updateParamConfigInfo(
|
|
||||||
type: 'list' | 'array',
|
|
||||||
args: Record<string, any>,
|
|
||||||
data: Record<string, any>
|
|
||||||
) {
|
|
||||||
let url = `/api/rest/systemManagement/v1/elementType/${args.neType.toLowerCase()}/objectType/config/${
|
|
||||||
args.topTag
|
|
||||||
}?ne_id=${args.neId}`;
|
|
||||||
|
|
||||||
// 多列表需要loc
|
|
||||||
if (type === 'array') {
|
|
||||||
url += `&loc=${args.loc}`;
|
|
||||||
}
|
|
||||||
|
|
||||||
return request({
|
|
||||||
url,
|
|
||||||
method: 'put',
|
|
||||||
data: data,
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 新增配置参数标签栏对应信息
|
|
||||||
* @param args 对象 {neType,neId,topTag,loc}
|
|
||||||
* @param data 行记录对象
|
|
||||||
* @returns object
|
|
||||||
*/
|
|
||||||
export function addParamConfigInfo(
|
|
||||||
args: Record<string, any>,
|
|
||||||
data: Record<string, any>
|
|
||||||
) {
|
|
||||||
return request({
|
|
||||||
url: `/api/rest/systemManagement/v1/elementType/${args.neType.toLowerCase()}/objectType/config/${
|
|
||||||
args.topTag
|
|
||||||
}?ne_id=${args.neId}&loc=${args.loc}`,
|
|
||||||
method: 'post',
|
|
||||||
data: data,
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 删除配置参数标签栏对应信息
|
|
||||||
* @param args 对象 {neType,neId,topTag,loc}
|
|
||||||
* loc 多层表的定位信息{index0}/{paraName1}/{index1}
|
|
||||||
* @param data 行记录对象
|
|
||||||
* @returns object
|
|
||||||
*/
|
|
||||||
export function delParamConfigInfo(args: Record<string, any>) {
|
|
||||||
return request({
|
|
||||||
url: `/api/rest/systemManagement/v1/elementType/${args.neType.toLowerCase()}/objectType/config/${
|
|
||||||
args.topTag
|
|
||||||
}?ne_id=${args.neId}&loc=${args.loc}`,
|
|
||||||
method: 'delete',
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 更新网元配置重新载入
|
* 更新网元配置重新载入
|
||||||
@@ -343,141 +36,50 @@ export async function updateNeConfigReload(neType: string, neId: string) {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 从参数配置PCF中获取对应信息提供给PCC用户策略输入框
|
* 从参数配置PCF中获取对应信息提供给PCC用户策略输入框
|
||||||
* @param neType 网元类型
|
|
||||||
* @param topTag
|
|
||||||
* @param neId
|
* @param neId
|
||||||
* @returns object { wrRule, dataArr }
|
* @returns object {pccRules,sessionRules,qosTemplate,headerEnrichTemplate,serviceAreaRestriction}
|
||||||
*/
|
*/
|
||||||
export async function getPCCRule(neId: any) {
|
export async function getPCCRule(neId: any) {
|
||||||
return await Promise.allSettled([
|
const paramNameArr = [
|
||||||
// 获取参数规则
|
'pccRules',
|
||||||
request({
|
'sessionRules',
|
||||||
url: `/api/rest/systemManagement/v1/elementType/pcf/objectType/config/pccRules`,
|
'qosTemplate',
|
||||||
method: 'get',
|
'headerEnrichTemplate',
|
||||||
params: {
|
'serviceAreaRestriction',
|
||||||
ne_id: neId,
|
];
|
||||||
},
|
const reqArr = [];
|
||||||
timeout: 1_000,
|
for (const paramName of paramNameArr) {
|
||||||
}),
|
reqArr.push(
|
||||||
// 获取对应信息
|
request({
|
||||||
request({
|
url: `/ne/config/data`,
|
||||||
url: `/api/rest/systemManagement/v1/elementType/pcf/objectType/config/sessionRules`,
|
params: { neType: 'PCF', neId, paramName },
|
||||||
method: 'get',
|
method: 'get',
|
||||||
params: {
|
})
|
||||||
ne_id: neId,
|
);
|
||||||
},
|
}
|
||||||
timeout: 1_000,
|
return await Promise.allSettled(reqArr).then(resArr => {
|
||||||
}),
|
|
||||||
request({
|
|
||||||
url: `/api/rest/systemManagement/v1/elementType/pcf/objectType/config/qosTemplate`,
|
|
||||||
method: 'get',
|
|
||||||
params: {
|
|
||||||
ne_id: neId,
|
|
||||||
},
|
|
||||||
timeout: 1_000,
|
|
||||||
}),
|
|
||||||
request({
|
|
||||||
url: `/api/rest/systemManagement/v1/elementType/pcf/objectType/config/headerEnrichTemplate`,
|
|
||||||
method: 'get',
|
|
||||||
params: {
|
|
||||||
ne_id: neId,
|
|
||||||
},
|
|
||||||
timeout: 1_000,
|
|
||||||
}),
|
|
||||||
request({
|
|
||||||
url: `/api/rest/systemManagement/v1/elementType/pcf/objectType/config/serviceAreaRestriction`,
|
|
||||||
method: 'get',
|
|
||||||
params: {
|
|
||||||
ne_id: neId,
|
|
||||||
},
|
|
||||||
timeout: 1_000,
|
|
||||||
}),
|
|
||||||
]).then(resArr => {
|
|
||||||
let pccJson: any = new Map();
|
|
||||||
let sessJson: any = new Map();
|
|
||||||
let qosJson: any = new Map();
|
|
||||||
let headerJson: any = new Map();
|
|
||||||
let sarJson: any = new Map();
|
|
||||||
// 规则数据
|
// 规则数据
|
||||||
if (resArr[0].status === 'fulfilled') {
|
const obj: any = {};
|
||||||
const itemV = resArr[0].value;
|
resArr.forEach((item, i: number) => {
|
||||||
// 解析数据
|
if (item.status === 'fulfilled') {
|
||||||
if (
|
const res = item.value;
|
||||||
itemV.code === RESULT_CODE_SUCCESS &&
|
if (res.code === RESULT_CODE_SUCCESS && Array.isArray(res.data)) {
|
||||||
Array.isArray(itemV.data?.data)
|
const key = paramNameArr[i];
|
||||||
) {
|
obj[key] = res.data.map((item: any) => {
|
||||||
let itemData = itemV.data.data;
|
if ('qosTemplate' === key) {
|
||||||
itemData.forEach((item: any) => {
|
return { value: item.qosId, label: item.qosId };
|
||||||
pccJson.set(item.ruleId, { value: item.ruleId, label: item.ruleId });
|
}
|
||||||
});
|
if ('headerEnrichTemplate' === key) {
|
||||||
}
|
return { value: item.templateName, label: item.templateName };
|
||||||
}
|
}
|
||||||
|
if ('serviceAreaRestriction' === key) {
|
||||||
if (resArr[1].status === 'fulfilled') {
|
return { value: item.name, label: item.name };
|
||||||
const itemV = resArr[1].value;
|
}
|
||||||
// 解析数据
|
return { value: item.ruleId, label: item.ruleId };
|
||||||
if (
|
|
||||||
itemV.code === RESULT_CODE_SUCCESS &&
|
|
||||||
Array.isArray(itemV.data?.data)
|
|
||||||
) {
|
|
||||||
let itemData = itemV.data.data;
|
|
||||||
itemData.forEach((item: any) => {
|
|
||||||
sessJson.set(item.ruleId, { value: item.ruleId, label: item.ruleId });
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (resArr[2].status === 'fulfilled') {
|
|
||||||
const itemV = resArr[2].value;
|
|
||||||
// 解析数据
|
|
||||||
if (
|
|
||||||
itemV.code === RESULT_CODE_SUCCESS &&
|
|
||||||
Array.isArray(itemV.data?.data)
|
|
||||||
) {
|
|
||||||
let itemData = itemV.data.data;
|
|
||||||
itemData.forEach((item: any) => {
|
|
||||||
qosJson.set(item.qosId, { value: item.qosId, label: item.qosId });
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (resArr[3].status === 'fulfilled') {
|
|
||||||
const itemV = resArr[3].value;
|
|
||||||
// 解析数据
|
|
||||||
if (
|
|
||||||
itemV.code === RESULT_CODE_SUCCESS &&
|
|
||||||
Array.isArray(itemV.data?.data)
|
|
||||||
) {
|
|
||||||
let itemData = itemV.data.data;
|
|
||||||
itemData.forEach((item: any) => {
|
|
||||||
headerJson.set(item.templateName, {
|
|
||||||
value: item.templateName,
|
|
||||||
label: item.templateName,
|
|
||||||
});
|
});
|
||||||
});
|
}
|
||||||
}
|
}
|
||||||
}
|
});
|
||||||
|
return obj;
|
||||||
if (resArr[4].status === 'fulfilled') {
|
|
||||||
const itemV = resArr[4].value;
|
|
||||||
// 解析数据
|
|
||||||
if (
|
|
||||||
itemV.code === RESULT_CODE_SUCCESS &&
|
|
||||||
Array.isArray(itemV.data?.data)
|
|
||||||
) {
|
|
||||||
let itemData = itemV.data.data;
|
|
||||||
itemData.forEach((item: any) => {
|
|
||||||
sarJson.set(item.name, { value: item.name, label: item.name });
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
pccJson = Array.from(pccJson.values());
|
|
||||||
sessJson = Array.from(sessJson.values());
|
|
||||||
qosJson = Array.from(qosJson.values());
|
|
||||||
headerJson = Array.from(headerJson.values());
|
|
||||||
sarJson = Array.from(sarJson.values());
|
|
||||||
|
|
||||||
return { pccJson, sessJson, qosJson, headerJson, sarJson };
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,165 +0,0 @@
|
|||||||
import useI18n from '@/hooks/useI18n';
|
|
||||||
import { regExpIPv4, regExpIPv6, validURL } from '@/utils/regular-utils';
|
|
||||||
|
|
||||||
export default function useOptions() {
|
|
||||||
const { t } = useI18n();
|
|
||||||
|
|
||||||
/**规则校验 */
|
|
||||||
function ruleVerification(row: Record<string, any>): (string | boolean)[] {
|
|
||||||
let result = [true, ''];
|
|
||||||
const type = row.type;
|
|
||||||
const value = row.value;
|
|
||||||
const filter = row.filter;
|
|
||||||
const display = row.display;
|
|
||||||
|
|
||||||
// 子嵌套的不检查
|
|
||||||
if (row.array) {
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
|
|
||||||
// 可选的同时没有值不检查
|
|
||||||
if (row.optional === 'true' && !value) {
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
switch (type) {
|
|
||||||
case 'int':
|
|
||||||
// filter: "0~128"
|
|
||||||
|
|
||||||
if (filter && filter.indexOf('~') !== -1) {
|
|
||||||
const filterArr = filter.split('~');
|
|
||||||
const minInt = parseInt(filterArr[0]);
|
|
||||||
const maxInt = parseInt(filterArr[1]);
|
|
||||||
const valueInt = parseInt(value);
|
|
||||||
if (valueInt < minInt || valueInt > maxInt) {
|
|
||||||
return [
|
|
||||||
false,
|
|
||||||
t('views.configManage.configParamForm.requireInt', {
|
|
||||||
display,
|
|
||||||
filter,
|
|
||||||
}),
|
|
||||||
];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case 'ipv4':
|
|
||||||
if (!regExpIPv4.test(value)) {
|
|
||||||
return [
|
|
||||||
false,
|
|
||||||
t('views.configManage.configParamForm.requireIpv4', { display }),
|
|
||||||
];
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case 'ipv6':
|
|
||||||
if (!regExpIPv6.test(value)) {
|
|
||||||
return [
|
|
||||||
false,
|
|
||||||
t('views.configManage.configParamForm.requireIpv6', { display }),
|
|
||||||
];
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case 'enum':
|
|
||||||
if (filter && filter.indexOf('{') === 1) {
|
|
||||||
let filterJson: Record<string, any> = {};
|
|
||||||
try {
|
|
||||||
filterJson = JSON.parse(filter); //string---json
|
|
||||||
} catch (error) {
|
|
||||||
console.error(error);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!Object.keys(filterJson).includes(`${value}`)) {
|
|
||||||
return [
|
|
||||||
false,
|
|
||||||
t('views.configManage.configParamForm.requireEnum', { display }),
|
|
||||||
];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case 'bool':
|
|
||||||
// filter: '{"0":"false", "1":"true"}'
|
|
||||||
|
|
||||||
if (filter && filter.indexOf('{') === 1) {
|
|
||||||
let filterJson: Record<string, any> = {};
|
|
||||||
try {
|
|
||||||
filterJson = JSON.parse(filter); //string---json
|
|
||||||
} catch (error) {
|
|
||||||
console.error(error);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!Object.values(filterJson).includes(`${value}`)) {
|
|
||||||
return [
|
|
||||||
false,
|
|
||||||
t('views.configManage.configParamForm.requireBool', { display }),
|
|
||||||
];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case 'string':
|
|
||||||
// filter: "0~128"
|
|
||||||
|
|
||||||
// 字符串长度判断
|
|
||||||
if (filter && filter.indexOf('~') !== -1) {
|
|
||||||
try {
|
|
||||||
const filterArr = filter.split('~');
|
|
||||||
let rule = new RegExp(
|
|
||||||
'^\\S{' + filterArr[0] + ',' + filterArr[1] + '}$'
|
|
||||||
);
|
|
||||||
if (!rule.test(value)) {
|
|
||||||
return [
|
|
||||||
false,
|
|
||||||
t('views.configManage.configParamForm.requireString', {
|
|
||||||
display,
|
|
||||||
}),
|
|
||||||
];
|
|
||||||
}
|
|
||||||
} catch (error) {
|
|
||||||
console.error(error);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
// 字符串http判断
|
|
||||||
if (value.startsWith('http')) {
|
|
||||||
try {
|
|
||||||
if (!validURL(value)) {
|
|
||||||
return [
|
|
||||||
false,
|
|
||||||
t('views.configManage.configParamForm.requireString', {
|
|
||||||
display,
|
|
||||||
}),
|
|
||||||
];
|
|
||||||
}
|
|
||||||
} catch (error) {
|
|
||||||
console.error(error);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
break;
|
|
||||||
case 'regex':
|
|
||||||
// filter: "^[0-9]{3}$"
|
|
||||||
|
|
||||||
if (filter) {
|
|
||||||
try {
|
|
||||||
let regex = new RegExp(filter);
|
|
||||||
if (!regex.test(value)) {
|
|
||||||
return [
|
|
||||||
false,
|
|
||||||
t('views.configManage.configParamForm.requireString', {
|
|
||||||
display,
|
|
||||||
}),
|
|
||||||
];
|
|
||||||
}
|
|
||||||
} catch (error) {
|
|
||||||
console.error(error);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
|
|
||||||
default:
|
|
||||||
return [
|
|
||||||
false,
|
|
||||||
t('views.configManage.configParamForm.requireUn', { display }),
|
|
||||||
];
|
|
||||||
}
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
|
|
||||||
return { ruleVerification };
|
|
||||||
}
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
import { getParamConfigInfo } from '@/api/configManage/configParam';
|
|
||||||
import { ref } from 'vue';
|
|
||||||
|
|
||||||
export default function useSMFOptions() {
|
|
||||||
/**upfId可选择 */
|
|
||||||
const optionsUPFIds = ref<{ value: string; label: string }[]>([]);
|
|
||||||
|
|
||||||
/**初始加载upfId */
|
|
||||||
function initUPFIds() {
|
|
||||||
getParamConfigInfo('smf', 'upfConfig', '001').then(res => {
|
|
||||||
optionsUPFIds.value = [];
|
|
||||||
for (const s of res.data) {
|
|
||||||
optionsUPFIds.value.push({
|
|
||||||
value: s.id,
|
|
||||||
label: s.id,
|
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
return { initUPFIds, optionsUPFIds };
|
|
||||||
}
|
|
||||||
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user