|
@@ -7,9 +7,9 @@
|
|
|
<el-row class="leftTopContent">
|
|
|
<el-row class="selectBar">
|
|
|
<el-row>
|
|
|
- <el-button size="mini" @click="searchTime('one')" :class="{ btnClick: timeArea === 'one' }">近一年</el-button>
|
|
|
- <el-button size="mini" @click="searchTime('three')" :class="{ btnClick: timeArea === 'three' }">近三年</el-button>
|
|
|
- <el-button size="mini" @click="searchTime('five')" :class="{ btnClick: timeArea === 'five' }">近五年</el-button>
|
|
|
+ <el-button size="mini" @click="searchTime(1)" :class="{ btnClick: timeArea === 1 }">近一年</el-button>
|
|
|
+ <el-button size="mini" @click="searchTime(3)" :class="{ btnClick: timeArea === 3 }">近三年</el-button>
|
|
|
+ <el-button size="mini" @click="searchTime(5)" :class="{ btnClick: timeArea === 5 }">近五年</el-button>
|
|
|
</el-row>
|
|
|
<el-form :inline="true" size="mini" :model="barForm">
|
|
|
<el-form-item label="">
|
|
@@ -34,28 +34,28 @@
|
|
|
<el-row class="threeBox">
|
|
|
<!-- :style="isVs3D?'padding-top:0.75rem':'padding-top:0'" -->
|
|
|
<div class="flexBoxE">
|
|
|
- <el-form v-show="isVs3D" :inline="true" size="mini" :model="fireCauseRatioObj">
|
|
|
+ <el-form v-show="isVsFirePie" :inline="true" size="mini" :model="fireCauseRatioObj">
|
|
|
<el-form-item label="街道:">
|
|
|
<el-select @change="getFireCause(1)" v-model="fireCauseRatioObj.address" placeholder="选择街道" filterable clearable >
|
|
|
<el-option :label="item" :value="item" v-for="item in fireAddressList" :key="item" ></el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-form>
|
|
|
- <pie-three-d ref="pieThreeD1" :dataMap="fireCauseRatioList" :distance="distance" :isVs="isVs3D"></pie-three-d>
|
|
|
+ <fire-pie ref="firePie1" :dataMap="fireCauseRatioList" :isVs="isVsFirePie" :radius="isVsFirePie ? 50 : 40"></fire-pie>
|
|
|
</div>
|
|
|
- <div class="line" v-show="isVs3D"></div>
|
|
|
- <div class="flexBoxE" v-show="isVs3D">
|
|
|
- <el-form v-show="isVs3D" :inline="true" size="mini" :model="fireCauseRatioObj" >
|
|
|
+ <div class="line" v-show="isVsFirePie"></div>
|
|
|
+ <div class="flexBoxE" v-show="isVsFirePie">
|
|
|
+ <el-form v-show="isVsFirePie" :inline="true" size="mini" :model="fireCauseRatioObj">
|
|
|
<el-form-item label="街道:">
|
|
|
<el-select @change="getFireCause(2)" v-model="fireCauseRatioObj.address2" placeholder="选择街道" filterable clearable>
|
|
|
<el-option :label="item" :value="item" v-for="item in fireAddressList" :key="item" ></el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-form>
|
|
|
- <pie-three-d style="flex: 1" ref="pieThreeD2" :dataMap="fireCauseRatioList2" :distance="distance" :isVs="isVs3D"></pie-three-d>
|
|
|
+ <fire-pie style="flex: 1" ref="firePie2" :dataMap="fireCauseRatioList2" :isVs="isVsFirePie" :radius="isVsFirePie ? 50 : 50"></fire-pie>
|
|
|
</div>
|
|
|
- <div class="VS" @click="vsClick('isVs3D')" :style="{ 'font-size': isVs3D ? '.225rem' : '.25rem' }">
|
|
|
- {{ isVs3D ? "返回" : "VS" }}
|
|
|
+ <div class="VS" @click="vsClick('isVsFirePie')" :style="{ 'font-size': isVsFirePie ? '.225rem' : '.25rem' }">
|
|
|
+ {{ isVsFirePie ? "返回" : "VS" }}
|
|
|
</div>
|
|
|
</el-row>
|
|
|
</el-col>
|
|
@@ -161,35 +161,6 @@
|
|
|
</el-table>
|
|
|
</el-col>
|
|
|
</div>
|
|
|
- <!-- <div class="rightContent"> -->
|
|
|
- <!-- <div class="VS" @click="vsClick('isVsTab')" :style="{ 'font-size': isVsTab ? '.2rem' : '.225rem' }">
|
|
|
- {{ isVsTab ? "返回" : "VS" }}
|
|
|
- </div>
|
|
|
- <div class="flexBoxE" :style="isVsTab ? '' : 'height:100%;padding-top:49px'">
|
|
|
- <el-form class="formVs" v-show="isVsTab" :inline="true" size="mini" :model="tabObj">
|
|
|
- <el-form-item label="街道:">
|
|
|
- <el-select v-model="tabObj.address" placeholder="选择街道" filterable clearable @change="getFireStatis(1)">
|
|
|
- <el-option :label="item" :value="item" v-for="item in fireAddressList" :key="item" ></el-option>
|
|
|
- </el-select>
|
|
|
- </el-form-item>
|
|
|
- </el-form>
|
|
|
- <div>
|
|
|
- <se-table ref="seTable" :dataMap="tableData" :headerData="headerData" :key="windowWidth"></se-table>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- <div class="flexBoxE" v-show="isVsTab" :style="isVsTab ? '' : 'height:100%;padding-top:49px'">
|
|
|
- <el-form v-show="isVsTab" :inline="true" size="mini" :model="tabObj">
|
|
|
- <el-form-item label="街道:">
|
|
|
- <el-select v-model="tabObj.address2" placeholder="选择街道" filterable clearable @change="getFireStatis(2)">
|
|
|
- <el-option :label="item" :value="item" v-for="item in fireAddressList" :key="item"></el-option>
|
|
|
- </el-select>
|
|
|
- </el-form-item>
|
|
|
- </el-form>
|
|
|
- <div>
|
|
|
- <se-table ref="seTable" :dataMap="tableData2" :headerData="headerData" :key="windowWidth"></se-table>
|
|
|
- </div>
|
|
|
- </div> -->
|
|
|
- <!-- </div> -->
|
|
|
</el-col>
|
|
|
</transition>
|
|
|
</el-row>
|
|
@@ -198,12 +169,12 @@
|
|
|
<script>
|
|
|
import linstener from "@c/mixins/linstener";
|
|
|
import categoryLine from "@c/category-line";
|
|
|
-import pieThreeD from "@c/pie-3D";
|
|
|
+import firePie from "@c/fire-pie";
|
|
|
import seTable from "@c/se-table";
|
|
|
import AMap from 'AMap'
|
|
|
import map from "@c/mixins/map";
|
|
|
export default {
|
|
|
- components: { categoryLine, pieThreeD, seTable },
|
|
|
+ components: { categoryLine, firePie, seTable },
|
|
|
mixins: [linstener,map],
|
|
|
data() {
|
|
|
return {
|
|
@@ -298,11 +269,11 @@ export default {
|
|
|
],
|
|
|
headerData: [
|
|
|
{ prop: "address", name: "火灾地址" },
|
|
|
- { prop: "burnedArea", name: "过火面积" },
|
|
|
- { prop: "propertyLoss", name: "财产损失" },
|
|
|
- { prop: "deathToll", name: "死亡人数" },
|
|
|
- { prop: "nonFatal", name: "受伤人数" },
|
|
|
- { prop: "disasterHome", name: "受灾户" },
|
|
|
+ { prop: "burnedArea", name: "过火面积(m²)" },
|
|
|
+ { prop: "propertyLoss", name: "财产损失(万元)" },
|
|
|
+ { prop: "deathToll", name: "死亡人数(人)" },
|
|
|
+ { prop: "nonFatal", name: "受伤人数(人)" },
|
|
|
+ { prop: "disasterHome", name: "受灾户(户)" },
|
|
|
{ prop: "fireCause", name: "火灾原因" },
|
|
|
],
|
|
|
fireAddressList: [],
|
|
@@ -322,14 +293,14 @@ export default {
|
|
|
fireType: "",
|
|
|
address: "",
|
|
|
},
|
|
|
- timeArea: 'one',
|
|
|
+ timeArea: 1,
|
|
|
};
|
|
|
},
|
|
|
created() {
|
|
|
this.getData();
|
|
|
},
|
|
|
watch:{
|
|
|
- isVs3D(val){
|
|
|
+ isVsFirePie(val){
|
|
|
console.log(val)
|
|
|
if(!val){
|
|
|
this.fireCauseRatioObj.address = ''
|
|
@@ -343,8 +314,8 @@ export default {
|
|
|
() =>
|
|
|
this.resizeTimeActions([
|
|
|
this.$refs.categoryLine,
|
|
|
- this.$refs.pieThreeD1,
|
|
|
- this.$refs.pieThreeD2,
|
|
|
+ this.$refs.firePie1,
|
|
|
+ this.$refs.firePie2,
|
|
|
]),
|
|
|
true
|
|
|
);
|
|
@@ -401,11 +372,10 @@ export default {
|
|
|
this.$api.fire.trendQuery +
|
|
|
"?" +
|
|
|
this.$qs.stringify({
|
|
|
- year: new Date().getFullYear(),
|
|
|
address: this.barForm.address,
|
|
|
fireType: this.barForm.fireType,
|
|
|
- startTime: this.$store.state.timeList[0] || "",
|
|
|
- endTime: this.$store.state.timeList[1] || "",
|
|
|
+ startTime: (new Date().getFullYear() - this.timeArea) + '-' + (new Date().getMonth() + 1) + '-' + new Date().getDate() + ' 00:00:00',
|
|
|
+ endTime: new Date().getFullYear() + '-' + (new Date().getMonth() + 1) + '-' + new Date().getDate() + ' 00:00:00',
|
|
|
})
|
|
|
);
|
|
|
if (res) this.timeData = res.data;
|
|
@@ -451,17 +421,19 @@ export default {
|
|
|
size: 1000,
|
|
|
startTime: this.$store.state.timeList[0] || "",
|
|
|
endTime: this.$store.state.timeList[1] || "",
|
|
|
- // address:val === 1 ? this.tabObj.address :val === 2 ? this.tabObj.address2 : ''
|
|
|
})
|
|
|
);
|
|
|
if (res){
|
|
|
- // if(val ===1){
|
|
|
- // this.tableData = res.data.records;
|
|
|
- // } else if(val ===2){
|
|
|
- // this.tableData2 = res.data.records;
|
|
|
- // } else {
|
|
|
- // this.tableData = res.data.records;
|
|
|
+ if(res.data.records.some(val=> val.propertyLoss > 10 * 10000)){
|
|
|
+ this.headerData[2].name = '财产损失(万元)'
|
|
|
+ this.tableData = res.data.records.map(val=> {
|
|
|
+ val.propertyLoss = val.propertyLoss / 10000
|
|
|
+ return val
|
|
|
+ });
|
|
|
+ } else{
|
|
|
this.tableData = res.data.records;
|
|
|
+ this.headerData[3].name = '财产损失(元)'
|
|
|
+ }
|
|
|
// }
|
|
|
}
|
|
|
},
|
|
@@ -479,7 +451,9 @@ export default {
|
|
|
if (res) this.tableData2 = res.data;
|
|
|
},
|
|
|
searchTime(val){
|
|
|
+ if(val === this.timeArea) return
|
|
|
this.timeArea = val
|
|
|
+ this.getTrend()
|
|
|
}
|
|
|
},
|
|
|
};
|