Commit e06725f3 authored by 郭铭瑶's avatar 郭铭瑶 🤘

调整标签筛选名称不符

parent 864e5927
......@@ -77,6 +77,7 @@
</n-collapse>
<m-animate enter="fadeInUp" leave="fadeOutDown" :duration="200">
<div v-if="visible" class="tag-box">
<!-- TODO 全局控制 -->
<span
v-for="tag in tagList"
:key="tag.name"
......
......@@ -30,7 +30,7 @@
<div class="list">
<div
v-for="item in organization"
:key="item.name"
:key="item.key"
:title="item.name"
>
<n-checkbox v-model:checked="item.checked" size="small">{{
......@@ -39,7 +39,9 @@
<div
v-show="item.checked"
class="export"
@click.prevent="handleExport('organization', item.name)"
@click.prevent="
handleExport('organization', item.key, item.name)
"
>
导出详表
<n-icon size=".1rem">
......@@ -51,14 +53,14 @@
</n-collapse-item>
<n-collapse-item title="党员" name="2">
<div class="list">
<div v-for="item in member" :key="item.name" :title="item.name">
<div v-for="item in member" :key="item.key" :title="item.name">
<n-checkbox v-model:checked="item.checked" size="small">{{
item.name
}}</n-checkbox>
<div
v-show="item.checked"
class="export"
@click.prevent="handleExport('member', item.name)"
@click.prevent="handleExport('member', item.key, item.name)"
>
导出详表
<n-icon size=".1rem">
......@@ -189,15 +191,16 @@ const fetchTags = async (type: string) => {
})
return res.map((item: any) => ({
name: item['标签名称'],
key: item['标签名称'].replace(type, '').replace('获得', ''),
checked: false,
}))
}
const organization = ref<{ name: string; checked: boolean }[]>([])
const organization = ref<{ key: string; name: string; checked: boolean }[]>([])
const getOrgTags = async () => {
organization.value = await fetchTags('党组织')
}
const member = ref<{ name: string; checked: boolean }[]>([])
const member = ref<{ key: string; name: string; checked: boolean }[]>([])
const getMemberTags = async () => {
member.value = await fetchTags('党员')
}
......@@ -251,7 +254,7 @@ const getDetail = async (type: string, name: string) => {
switch (type) {
case 'organization':
res = await useFetchOrg({
q: `paths @ "标签" && string == "${name}"`,
q: `paths @ "标签" && string @ "${name}"`,
})
break
case 'member':
......@@ -280,8 +283,8 @@ const getDetail = async (type: string, name: string) => {
return res
}
const handleExport = async (type: string, name: string) => {
const res = await getDetail(type, name)
const handleExport = async (type: string, key: string, name: string) => {
const res = await getDetail(type, key)
const data = res.map((item: any) => item.extra)
useExportFile(data, type === 'organization' ? '党组织名称' : '姓名', name)
}
......@@ -289,12 +292,12 @@ const handleExport = async (type: string, name: string) => {
watch(
() => organization.value,
async (data) => {
const names = data.filter((e) => e.checked).map((e) => e.name)
const keys = data.filter((e) => e.checked).map((e) => e.key)
const pointData: any[] = []
const result = await Promise.all(
names.map((name) => getDetail('organization', name)),
keys.map((key) => getDetail('organization', key)),
)
result.forEach((item: any[]) => pointData.push(...item))
result.forEach((item: any[]) => pointData.push(...item.map((e) => e.extra)))
console.log('organization撒点数据:', pointData)
// TODO 撒点
},
......@@ -303,12 +306,12 @@ watch(
watch(
() => member.value,
async (data) => {
const names = data.filter((e) => e.checked).map((e) => e.name)
const keys = data.filter((e) => e.checked).map((e) => e.key)
const pointData: any[] = []
const result = await Promise.all(
names.map((name) => getDetail('member', name)),
keys.map((key) => getDetail('member', key)),
)
result.forEach((item: any[]) => pointData.push(...item))
result.forEach((item: any[]) => pointData.push(...item.map((e) => e.extra)))
console.log('member撒点数据:', pointData)
// TODO 撒点
},
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment