Commit 004fcae9 authored by 王晓倩's avatar 王晓倩

数据统计列表页

parent ef3861f2
......@@ -17,12 +17,11 @@
</el-form>
</el-col>
</el-row>
<el-table :data="tableData.pageData" stripe show-summary border style="width:100%;" :loading="loading">
<el-table :data="tableData.pageData" stripe show-summary :summary-method="getTotal" border style="width:100%;" :loading="loading">
<el-table-column prop="unitName" label="企业名称"></el-table-column>
<el-table-column prop="unitName" label="危险源"></el-table-column>
<el-table-column prop="legalPerson" label="设备监控"></el-table-column>
<el-table-column prop="orgCode" label="职业危害场所"></el-table-column>
<el-table-column prop="legalPersonEmail" label="隐患数量""></el-table-column>
<el-table-column prop="dangerNum" label="危险源数量"></el-table-column>
<el-table-column prop="cameraNum" label="设备监控数量"></el-table-column>
<el-table-column prop="troubleNum" label="隐患数量"></el-table-column>
</el-table>
<el-pagination
background
......@@ -42,8 +41,8 @@
:key="zjKey"
></EnterprisesMgEdit>
</div>
</template>
<script lang="ts">
</template>
<script lang="ts">
import { Component, Vue, Provide } from "vue-property-decorator";
import EnterprisesMgEdit from "./EnterprisesMgEdit.vue";
import City from "@/components/city.vue";
......@@ -69,7 +68,7 @@
that.loading = true;
METHOD.axiosPost(
that,
`/enterpriseInfo/queryEnterpriseInfo`,
`/dataStatistics/getDataStatistics`,
param,
function(res: any) {
that.loading = false;
......@@ -79,6 +78,52 @@
}
);
}
getTotal(param: any) {
const { columns, data } = param;
const sums: any[] = [];
columns.forEach((column: any, index: any) => {
if (index === 0) {
sums[index] = '合计';
return;
}
const values = data.map((item: { [x: string]: any; }) => Number(item[column.property]));
if (column.property === 'dangerNum') {
sums[index] = values.reduce((prev: any, curr: any) => {
const value = Number(curr);
if (!isNaN(value)) {
return prev + curr;
} else {
return prev;
}
}, 0);
sums[index];
} else if (column.property === 'troubleNum') {
sums[index] = values.reduce((prev: any, curr: any) => {
const value = Number(curr);
if (!isNaN(value)) {
return prev + curr;
} else {
return prev;
}
}, 0);
sums[index];
} else if (column.property === 'cameraNum') {
sums[index] = values.reduce((prev: any, curr: any) => {
const value = Number(curr);
if (!isNaN(value)) {
return prev + curr;
} else {
return prev;
}
}, 0);
sums[index];
} else {
sums[index] = '--';
}
});
return sums;
}
searchFun() {
this.PAGE = { page: 1, size: 10 };
this.getTableData();
......@@ -167,8 +212,8 @@
this.getTableData();
}
}
</script>
<style lang="scss" >
</script>
<style lang="scss" >
@import "@/utils/public.scss";
@media screen and (max-width: 1350px) {
main > div .el-table {
......@@ -181,4 +226,4 @@
font-size: 14px;
word-break: break-all;
}
</style>
\ No newline at end of file
</style>
\ No newline at end of file
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