|
|
@@ -38,13 +38,13 @@ const field = ref<FieldType>('title')
|
|
|
// 查询关键词
|
|
|
const keyword = ref('')
|
|
|
// 过滤栏选择的企业id
|
|
|
-const companyIdSelected = ref<number | undefined>(undefined)
|
|
|
+const companyIdSelected = ref<Array<number>>([])
|
|
|
// 模板选择器ref
|
|
|
const templateSelect = ref<InstanceType<typeof TemplateSelect> | null>(null)
|
|
|
|
|
|
-function fetchReports(companyId?: number, page?: number, field?: string, keyword?: string) {
|
|
|
+function fetchReports(companyIds?: Array<number>, page?: number, field?: string, keyword?: string) {
|
|
|
spinning.value = true;
|
|
|
- reportsService.query(page, companyId, field, keyword).then((resp) => {
|
|
|
+ reportsService.query(page, companyIds, field, keyword).then((resp) => {
|
|
|
total.value = resp.total;
|
|
|
reports.value = resp.reports;
|
|
|
spinning.value = false;
|
|
|
@@ -59,12 +59,20 @@ function onCompanySelectChange(event: {index: number, checked: boolean}) {
|
|
|
const company = companies.value[event.index];
|
|
|
company.checked = event.checked;
|
|
|
|
|
|
- if (event.checked) {
|
|
|
- companyIdSelected.value = company.id;
|
|
|
- fetchReports(company.id)
|
|
|
- } else {
|
|
|
- companyIdSelected.value = undefined;
|
|
|
- fetchReports()
|
|
|
+ if (company.id || company.id == 0) {
|
|
|
+ if (!event.checked) {
|
|
|
+ companyIdSelected.value.splice(companyIdSelected.value.indexOf(company.id), 1);
|
|
|
+ } else {
|
|
|
+ companyIdSelected.value.push(company.id);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ if (companyIdSelected.value) {
|
|
|
+ if (companyIdSelected.value.length > 0) {
|
|
|
+ fetchReports(companyIdSelected.value)
|
|
|
+ } else {
|
|
|
+ fetchReports()
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
|