统计切换为树形结构
This commit is contained in:
parent
f0518795da
commit
1bc38d1884
@ -18,27 +18,19 @@
|
|||||||
size="big"
|
size="big"
|
||||||
@change="changeDatePick"
|
@change="changeDatePick"
|
||||||
/>
|
/>
|
||||||
|
<el-button type="primary" @click="getList" style="margin-left: 20px;">
|
||||||
|
<Icon icon="ep:search" class="mr-5px" /> 查询
|
||||||
|
</el-button>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-row>
|
</el-row>
|
||||||
</ContentWrap>
|
</ContentWrap>
|
||||||
<ContentWrap>
|
<ContentWrap>
|
||||||
<el-table :data="data1" show-summary max-height="650">
|
<el-table :data="data1" show-summary max-height="650"
|
||||||
|
default-expand-all
|
||||||
|
row-key="orgname"
|
||||||
|
:tree-props="{ children: 'children' }">
|
||||||
<el-table-column label="卫生院" align="center" prop="orgname" width="200"/>
|
<el-table-column label="卫生院" align="center" prop="orgname" width="200"/>
|
||||||
<el-table-column type="expand" label="展开行政村" align="center" width="200">
|
<el-table-column label="行政村" align="center" prop="districtname" width="200"/>
|
||||||
<template #default="scope">
|
|
||||||
<el-table :data="scope.row.list" style="margin-left: 200px;">
|
|
||||||
<el-table-column label="行政村" align="center" prop="districtname" width="200"/>
|
|
||||||
<el-table-column label="体检数" align="center" >
|
|
||||||
<el-table-column label="老年人" align="center" prop="oldmanflag" width="210" />
|
|
||||||
<el-table-column label="高血压" align="center" prop="htnflag" width="210"/>
|
|
||||||
<el-table-column label="糖尿病" align="center" prop="diaflag" width="210"/>
|
|
||||||
<el-table-column label="精神病" align="center" prop="smiflag" width="210"/>
|
|
||||||
<el-table-column label="肺结核" align="center" prop="pulflag" width="210"/>
|
|
||||||
<el-table-column label="总数" align="center" prop="sum" sortable width="210"/>
|
|
||||||
</el-table-column>
|
|
||||||
</el-table>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="体检数" align="center" >
|
<el-table-column label="体检数" align="center" >
|
||||||
<el-table-column label="老年人" align="center" prop="oldmanflag" width="210"/>
|
<el-table-column label="老年人" align="center" prop="oldmanflag" width="210"/>
|
||||||
<el-table-column label="高血压" align="center" prop="htnflag" width="210"/>
|
<el-table-column label="高血压" align="center" prop="htnflag" width="210"/>
|
||||||
@ -86,7 +78,6 @@ const data = ref([
|
|||||||
])*/
|
])*/
|
||||||
const data1 = ref([])
|
const data1 = ref([])
|
||||||
const radioSelector = ref([
|
const radioSelector = ref([
|
||||||
{value:1,label:'全部'},
|
|
||||||
{value:2,label:'今天'},
|
{value:2,label:'今天'},
|
||||||
{value:3,label:'最近一周'},
|
{value:3,label:'最近一周'},
|
||||||
{value:4,label:'最近一个月'},
|
{value:4,label:'最近一个月'},
|
||||||
@ -129,7 +120,6 @@ const changeRadio = (e) => {
|
|||||||
let start = new Date()
|
let start = new Date()
|
||||||
let date = null
|
let date = null
|
||||||
switch (e){
|
switch (e){
|
||||||
case 1 : date = [];break
|
|
||||||
case 2 : break
|
case 2 : break
|
||||||
case 3 : start.setDate(start.getDate() - 7);break
|
case 3 : start.setDate(start.getDate() - 7);break
|
||||||
case 4 : start.setMonth(start.getMonth() - 1);break
|
case 4 : start.setMonth(start.getMonth() - 1);break
|
||||||
@ -137,11 +127,11 @@ const changeRadio = (e) => {
|
|||||||
}
|
}
|
||||||
console.log(time.value)
|
console.log(time.value)
|
||||||
time.value = [formatDate(start,'YYYY-MM-DD'),formatDate(end,'YYYY-MM-DD')]
|
time.value = [formatDate(start,'YYYY-MM-DD'),formatDate(end,'YYYY-MM-DD')]
|
||||||
getList()
|
// getList()
|
||||||
}
|
}
|
||||||
const changeDatePick = () => {
|
const changeDatePick = () => {
|
||||||
radioType.value = null
|
radioType.value = null
|
||||||
getList()
|
// getList()
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* 获取统计数据
|
* 获取统计数据
|
||||||
@ -155,6 +145,7 @@ const getList = async ()=>{
|
|||||||
}
|
}
|
||||||
let resp = await PatientApi.getData(params)
|
let resp = await PatientApi.getData(params)
|
||||||
data1.value = dataProcessing(resp)
|
data1.value = dataProcessing(resp)
|
||||||
|
console.log(data1.value)
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* 统计数据处理
|
* 统计数据处理
|
||||||
@ -173,7 +164,7 @@ const dataProcessing = (data) => {
|
|||||||
smiflag: 0,
|
smiflag: 0,
|
||||||
pulflag: 0,
|
pulflag: 0,
|
||||||
sum: 0,
|
sum: 0,
|
||||||
list: []
|
children: []
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
// 累加各字段值
|
// 累加各字段值
|
||||||
@ -184,15 +175,17 @@ const dataProcessing = (data) => {
|
|||||||
acc[key].pulflag += current.pulflag;
|
acc[key].pulflag += current.pulflag;
|
||||||
acc[key].sum += current.sum;
|
acc[key].sum += current.sum;
|
||||||
// 将当前对象添加到 list 中(避免引用问题需深拷贝)
|
// 将当前对象添加到 list 中(避免引用问题需深拷贝)
|
||||||
acc[key].list.push({ ...current });
|
let cObj = Object.assign(current,{})
|
||||||
|
delete cObj.orgname
|
||||||
|
acc[key].children.push({ ...cObj });
|
||||||
return acc;
|
return acc;
|
||||||
}, {});
|
}, {});
|
||||||
|
|
||||||
return Object.values(result);
|
return Object.values(result);
|
||||||
}
|
}
|
||||||
onMounted(()=>{
|
onMounted(()=>{
|
||||||
getList()
|
|
||||||
changeRadio(3)
|
changeRadio(3)
|
||||||
|
getList()
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user