Merge branch 'dev' into dev-dictionary

This commit is contained in:
XieYongHong 2023-10-17 15:31:41 +08:00
commit fe080130b8
3 changed files with 68 additions and 15 deletions

View File

@ -24,12 +24,42 @@ export const encodeParams = (params: Record<string, any>) => {
return _params.toString() return _params.toString()
} }
const handleTermsArr = (queryTerms: any, data: any[], parentKey?: string) => {
data.forEach((item, index) => {
const key = `${parentKey}[${index}]`
if (isArray(item)){
handleTermsArr(queryTerms, item, `${key}`)
} else if (isObject(item)) {
handleTermsObject(queryTerms, item, `${key}`)
} else {
queryTerms[key] = item
}
})
}
const handleTermsObject = (queryTerms: any, data: any, parentKey?: string) => {
Object.keys(data).forEach(k => {
const key = `${parentKey}.${k}`
console.log(key, data[k], isObject(data[k]), isArray(data[k]))
if (isArray(data[k])) {
handleTermsArr(queryTerms, data[k], `${key}`)
} else if (isObject(data[k])) {
handleTermsObject(queryTerms, data[k], `${key}`)
} else {
queryTerms[key] = data[k]
}
})
}
const handleTermsToString = (queryTerms: any, terms: Array<TermsType>, parentKey?: string) => { const handleTermsToString = (queryTerms: any, terms: Array<TermsType>, parentKey?: string) => {
console.log(terms)
terms.forEach((a, aIndex) => { terms.forEach((a, aIndex) => {
Object.keys(a).forEach((b) => { Object.keys(a).forEach((b) => {
const key = `${parentKey}[${aIndex}].${b}` const key = `${parentKey}[${aIndex}].${b}`
if (b === 'terms') { if (isArray(a[b])) {
handleTermsToString(queryTerms, a[b], `${key}`) handleTermsArr(queryTerms, a[b], `${key}`)
} else if (isObject(a[b])) {
handleTermsObject(queryTerms, a[b], `${key}`)
} else { } else {
queryTerms[key] = a[b] queryTerms[key] = a[b]
} }

View File

@ -185,7 +185,8 @@ const getOptions = (arr: any[]) => {
tooltip: { tooltip: {
trigger: 'axis', trigger: 'axis',
position: function (pt: any) { position: function (pt: any) {
return [pt[0], '10%']; const left = pt[0] - 80
return [left, '10%'];
}, },
}, },
series: [ series: [

View File

@ -503,6 +503,17 @@ const columns = [
hideInTable: true, hideInTable: true,
search: { search: {
type: 'treeSelect', type: 'treeSelect',
// handleValue(v) {
// return {
// assetType: 'device',
// targets: [
// {
// type: 'org',
// id: v,
// },
// ],
// }
// },
options: () => options: () =>
new Promise((resolve) => { new Promise((resolve) => {
queryOrgThree({}).then((resp: any) => { queryOrgThree({}).then((resp: any) => {
@ -515,13 +526,13 @@ const columns = [
_list.push({ _list.push({
...item, ...item,
id: JSON.stringify({ id: JSON.stringify({
assetType: 'device', assetType: 'device',
targets: [ targets: [
{ {
type: 'org', type: 'org',
id: item.id, id: item.id,
}, },
], ],
}), }),
}); });
}); });
@ -732,13 +743,13 @@ const selectAll = (selected: Boolean, selectedRows: any,changeRows:any) => {
const arr = changeRows.map((item: any) => item.id) const arr = changeRows.map((item: any) => item.id)
const _ids: string[] = []; const _ids: string[] = [];
_selectedRowKeys.value.map((i: any) => { _selectedRowKeys.value.map((i: any) => {
if (!arr.includes(i)) { if (!arr.includes(i)) {
_ids.push(i) _ids.push(i)
} }
}) })
_selectedRowKeys.value = _ids _selectedRowKeys.value = _ids
} }
} }
const handleClick = (dt: any) => { const handleClick = (dt: any) => {
@ -918,15 +929,26 @@ const handleSearch = (_params: any) => {
// params.value = _params; // params.value = _params;
const newParams = (_params?.terms as any[])?.map((item1) => { const newParams = (_params?.terms as any[])?.map((item1) => {
item1.terms = item1.terms.map((item2: any) => { item1.terms = item1.terms.map((item2: any) => {
if ( if (item2.column === 'id$dim-assets') {
if (item2.termType === 'not') {
const oldValue = JSON.parse(item2.value)
oldValue.not = true
item2.value = JSON.stringify(oldValue)
}
delete item2.termType
}
if (
item2.column && item2.column &&
['classifiedId', 'accessId', 'accessProvider'].includes( ['classifiedId', 'accessId', 'accessProvider'].includes(
item2.column, item2.column,
) )
) { ) {
const oldTermType = item2.termType
delete item2.termType
return { return {
...item2, ...item2,
column: 'productId$product-info', column: `productId$product-info$${oldTermType}`,
}; };
} }
return item2; return item2;