|
@@ -5,7 +5,7 @@
|
|
<li>
|
|
<li>
|
|
<p class="list-num">
|
|
<p class="list-num">
|
|
<i class='el-icon-s-order'></i>
|
|
<i class='el-icon-s-order'></i>
|
|
- {{324}}
|
|
|
|
|
|
+ {{lederDelObjectCount}}
|
|
</p>
|
|
</p>
|
|
<p class="list-text">台账中待删除的对象</p>
|
|
<p class="list-text">台账中待删除的对象</p>
|
|
</li>
|
|
</li>
|
|
@@ -19,14 +19,14 @@
|
|
<li>
|
|
<li>
|
|
<p class="list-num">
|
|
<p class="list-num">
|
|
<i class="el-icon-s-marketing"></i>
|
|
<i class="el-icon-s-marketing"></i>
|
|
- {{33}}
|
|
|
|
|
|
+ {{notSyncDataCount}}
|
|
</p>
|
|
</p>
|
|
<p class="list-text">不能同步到物理世界的关系数据</p>
|
|
<p class="list-text">不能同步到物理世界的关系数据</p>
|
|
</li>
|
|
</li>
|
|
<li>
|
|
<li>
|
|
<p class="list-num">
|
|
<p class="list-num">
|
|
<i class="el-icon-s-release"></i>
|
|
<i class="el-icon-s-release"></i>
|
|
- {{134}}
|
|
|
|
|
|
+ {{postRelationInforCount}}
|
|
</p>
|
|
</p>
|
|
<p class="list-text">岗位和关联的资产信息点值不一致</p>
|
|
<p class="list-text">岗位和关联的资产信息点值不一致</p>
|
|
</li>
|
|
</li>
|
|
@@ -36,49 +36,82 @@
|
|
<p class="basic-statistics">基本统计</p>
|
|
<p class="basic-statistics">基本统计</p>
|
|
<div class="data equipment">
|
|
<div class="data equipment">
|
|
<!-- 设备:本期只做前三个 -->
|
|
<!-- 设备:本期只做前三个 -->
|
|
- <span class="contain-title">设备<i>{{equipCount}}</i></span>
|
|
|
|
|
|
+ <span class="contain-title">设备<i>{{`(${equipCount?equipCount:"0"})`}}</i></span>
|
|
<div class="data-show" v-loading="isLoading" v-if="equipment.length">
|
|
<div class="data-show" v-loading="isLoading" v-if="equipment.length">
|
|
<div class="show-content" v-for="(item,index) in equipment" :key="index">
|
|
<div class="show-content" v-for="(item,index) in equipment" :key="index">
|
|
<data-origin :id="'origin' + index" :renderData="item"></data-origin>
|
|
<data-origin :id="'origin' + index" :renderData="item"></data-origin>
|
|
</div>
|
|
</div>
|
|
- <div v-if="!equipment.length" class="center" style="margin-top: 260px;">
|
|
|
|
- <i class="icon-wushuju iconfont"></i>
|
|
|
|
- 暂无数据
|
|
|
|
- </div>
|
|
|
|
|
|
+ </div>
|
|
|
|
+ <div v-if="!equipment.length" class="center" style="height: 60%;transform: translateY(30%);">
|
|
|
|
+ <i class="icon-wushuju iconfont"></i>
|
|
|
|
+ 暂无数据
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="data assets">
|
|
<div class="data assets">
|
|
- <span class="contain-title">资产<i>{{assetsCount}}</i></span>
|
|
|
|
|
|
+ <span class="contain-title">资产<i>{{`(${assetsCount?assetsCount:"0"})`}}</i></span>
|
|
<div class="data-show" v-loading="isLoading" v-if="assets.length">
|
|
<div class="data-show" v-loading="isLoading" v-if="assets.length">
|
|
<div class="show-content" v-for="(item,index) in assets" :key="index">
|
|
<div class="show-content" v-for="(item,index) in assets" :key="index">
|
|
<data-origin :id="'origin' + index" :renderData="item"></data-origin>
|
|
<data-origin :id="'origin' + index" :renderData="item"></data-origin>
|
|
</div>
|
|
</div>
|
|
- <div v-if="!assets.length" class="center" style="margin-top: 260px;">
|
|
|
|
- <i class="icon-wushuju iconfont"></i>
|
|
|
|
- 暂无数据
|
|
|
|
- </div>
|
|
|
|
|
|
+ </div>
|
|
|
|
+ <div v-if="!assets.length" class="center" style="height: 60%;transform: translateY(30%);">
|
|
|
|
+ <i class="icon-wushuju iconfont"></i>
|
|
|
|
+ 暂无数据
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="data parts">
|
|
<div class="data parts">
|
|
- <span class="contain-title">部件<i>{{partsCount}}</i></span>
|
|
|
|
|
|
+ <span class="contain-title">部件<i>{{`(${partsCount?partsCount:'0'})`}}</i></span>
|
|
|
|
+ <div v-if="!parts.length" class="center" style="height: 60%;transform: translateY(30%);">
|
|
|
|
+ <i class="icon-wushuju iconfont"></i>
|
|
|
|
+ 暂无数据
|
|
|
|
+ </div>
|
|
</div>
|
|
</div>
|
|
<div class="data business-space">
|
|
<div class="data business-space">
|
|
- <span class="contain-title">业务空间{{}}</span>
|
|
|
|
- <div class="data-show">
|
|
|
|
- <div v-for="(item,index) in list" :key="index" class="show-content">
|
|
|
|
- <datafan :id="'origin' + index" :renderData="item"></datafan>
|
|
|
|
|
|
+ <span class="contain-title">业务空间<i>{{`(${zoneSpaceCount?zoneSpaceCount:'0'})`}}</i></span>
|
|
|
|
+ <div class="data-show" v-if="business.length">
|
|
|
|
+ <div v-for="(item,index) in business" :key="index" class="show-content">
|
|
|
|
+ <datafan :id="'datafan' + index" :renderData="item"></datafan>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
+ <div v-if="!business.length" class="center" style="height: 60%;transform: translateY(30%);">
|
|
|
|
+ <i class="icon-wushuju iconfont"></i>
|
|
|
|
+ 暂无数据
|
|
|
|
+ </div>
|
|
</div>
|
|
</div>
|
|
<div class="data system">
|
|
<div class="data system">
|
|
<!-- 系统:本期只查询总数 -->
|
|
<!-- 系统:本期只查询总数 -->
|
|
- <span class="contain-title">系统{{}}</span>
|
|
|
|
|
|
+ <span class="contain-title">系统<i>{{`(${systemCount?systemCount:'0'})`}}</i></span>
|
|
|
|
+ <div v-if="!system.length" class="center" style="height: 60%;transform: translateY(30%);">
|
|
|
|
+ <i class="icon-wushuju iconfont"></i>
|
|
|
|
+ 暂无数据
|
|
|
|
+ </div>
|
|
</div>
|
|
</div>
|
|
<div class="data tenant">
|
|
<div class="data tenant">
|
|
- <span class="contain-title">租户{{}}</span>
|
|
|
|
|
|
+ <span class="contain-title">租户<i>{{`(${rentantCount?rentantCount:'0'})`}}</i></span>
|
|
|
|
+ <div class="data-show" v-loading="isLoading" v-if="tenant.length">
|
|
|
|
+ <div class="show-content" v-for="(item,index) in tenant" :key="index">
|
|
|
|
+ <data-origin :id="'origin' + item + index" :renderData="item"></data-origin>
|
|
|
|
+ </div>
|
|
|
|
+ </div>
|
|
|
|
+ <div v-if="!tenant.length" class="center" style="height: 60%;transform: translateY(30%);">
|
|
|
|
+ <i class="icon-wushuju iconfont"></i>
|
|
|
|
+ 暂无数据
|
|
|
|
+ </div>
|
|
</div>
|
|
</div>
|
|
<div class="data shaft">
|
|
<div class="data shaft">
|
|
- <span class="contain-title">竖井{{}}</span>
|
|
|
|
|
|
+ <span class="contain-title">竖井<i>{{`(${shaftCount?shaftCount:'0'})`}}</i></span>
|
|
|
|
+ <div class="data-show" v-loading="isLoading" v-if="shaft.length">
|
|
|
|
+ <div class="show-content">
|
|
|
|
+ <datafan :id="'origin' + shaft" :renderData="shaft[0]"></datafan>
|
|
|
|
+ </div>
|
|
|
|
+ <div class="show-content">
|
|
|
|
+ <data-origin :id="'origin' + shaft" :renderData="shaft[1]"></data-origin>
|
|
|
|
+ </div>
|
|
|
|
+ </div>
|
|
|
|
+ <div v-if="!shaft.length" class="center" style="height: 60%;transform: translateY(30%);">
|
|
|
|
+ <i class="icon-wushuju iconfont"></i>
|
|
|
|
+ 暂无数据
|
|
|
|
+ </div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
@@ -86,7 +119,24 @@
|
|
|
|
|
|
<script>
|
|
<script>
|
|
import { mapGetters } from "vuex";
|
|
import { mapGetters } from "vuex";
|
|
-import { countEquip, countProperty, queryPart } from "@/api/scan/request";
|
|
|
|
|
|
+import {
|
|
|
|
+ queryLederDelObject,
|
|
|
|
+ notSyncRelationData,
|
|
|
|
+ postRelationInforAtpism,
|
|
|
|
+ countEquip,
|
|
|
|
+ countProperty,
|
|
|
|
+ queryPart,
|
|
|
|
+ queryZoneCount,
|
|
|
|
+ queryPartitionRatio,
|
|
|
|
+ queryDefaultFunTypes,
|
|
|
|
+ countGeneralSys,
|
|
|
|
+ queryRentCount,
|
|
|
|
+ queryTenantCompletion,
|
|
|
|
+ queryCenoteCount,
|
|
|
|
+ queryShaftFunctionType,
|
|
|
|
+ ShaftRelationBusinessSpace,
|
|
|
|
+ getDataDictionary
|
|
|
|
+} from "@/api/scan/request";
|
|
import dataOrigin from "@/components/ledger/report/dataorigin";
|
|
import dataOrigin from "@/components/ledger/report/dataorigin";
|
|
import datafan from "@/components/ledger/report/datafan";
|
|
import datafan from "@/components/ledger/report/datafan";
|
|
import { queryDataSourceCount, synchronizeProj } from "@/fetch/point_http";
|
|
import { queryDataSourceCount, synchronizeProj } from "@/fetch/point_http";
|
|
@@ -94,23 +144,90 @@ import { queryDataSourceCount, synchronizeProj } from "@/fetch/point_http";
|
|
export default {
|
|
export default {
|
|
data() {
|
|
data() {
|
|
return {
|
|
return {
|
|
- list: [],
|
|
|
|
- equipCount: '',
|
|
|
|
|
|
+ lederDelObjectCount: null,
|
|
|
|
+ notSyncDataCount: null,
|
|
|
|
+ postRelationInforCount: null,
|
|
|
|
+ equipCount: null,
|
|
equipment: [],
|
|
equipment: [],
|
|
- assetsCount: '',
|
|
|
|
|
|
+ assetsCount: null,
|
|
assets: [],
|
|
assets: [],
|
|
- partsCount: '',
|
|
|
|
- business: [
|
|
|
|
- { title: '各分区占比', tips: '' },
|
|
|
|
- { title: '默认分区功能类型占比', tips: '' }
|
|
|
|
- ],
|
|
|
|
- tenant: [
|
|
|
|
- { title: '关联业务空间完成度', tips: '' }
|
|
|
|
- ],
|
|
|
|
- shaft: [
|
|
|
|
- { title: '按功能类型占比', tips: '' },
|
|
|
|
- { title: '关联业务空间完成度', tips: '' }
|
|
|
|
|
|
+ parts: [],
|
|
|
|
+ partsCount: null,
|
|
|
|
+ zoneSpaceCount: null,
|
|
|
|
+ zoneType: [
|
|
|
|
+ {
|
|
|
|
+ "Code": "GeneralZone",
|
|
|
|
+ "Name": "默认分区",
|
|
|
|
+ "Rel_type": "99"
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ "Name": "供电分区",
|
|
|
|
+ "Rel_type": "1",
|
|
|
|
+ "Code": "PowerSupplyZone"
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ "Name": "照明分区",
|
|
|
|
+ "Rel_type": "2",
|
|
|
|
+ "Code": "LightingZone"
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ "Name": "网络分区",
|
|
|
|
+ "Rel_type": "3",
|
|
|
|
+ "Code": "NetworkZone"
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ "Code": "AirConditioningZone",
|
|
|
|
+ "Name": "空调分区",
|
|
|
|
+ "Rel_type": "4"
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ "Name": "采暖分区",
|
|
|
|
+ "Rel_type": "5",
|
|
|
|
+ "Code": "HeatingZone"
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ "Name": "洁净分区",
|
|
|
|
+ "Rel_type": "6",
|
|
|
|
+ "Code": "CleanZone"
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ "Name": "生活给水分区",
|
|
|
|
+ "Rel_type": "7",
|
|
|
|
+ "Code": "DomesticWaterSupplyZone"
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ "Code": "FireZone",
|
|
|
|
+ "Name": "防火分区",
|
|
|
|
+ "Rel_type": "8"
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ "Name": "安防分区",
|
|
|
|
+ "Rel_type": "9",
|
|
|
|
+ "Code": "SecurityZone"
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ "Name": "租户分区",
|
|
|
|
+ "Rel_type": "10",
|
|
|
|
+ "Code": "TenantZone"
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ "Name": '功能分区',
|
|
|
|
+ 'Rel_type': '11',
|
|
|
|
+ "Code": 'FunctionZone'
|
|
|
|
+ }
|
|
],
|
|
],
|
|
|
|
+ partProtion: [],
|
|
|
|
+ defaultPart: [],
|
|
|
|
+ funtionType: [],
|
|
|
|
+ business: [],
|
|
|
|
+ systemCount: null,
|
|
|
|
+ system: [],
|
|
|
|
+ rentantCount: null,
|
|
|
|
+ shaftCount: null,
|
|
|
|
+ tenant: [],
|
|
|
|
+ shaft: [],
|
|
|
|
+ shaftPartProtion: [],
|
|
|
|
+ params: null,
|
|
isLoading: false
|
|
isLoading: false
|
|
}
|
|
}
|
|
},
|
|
},
|
|
@@ -120,27 +237,48 @@ export default {
|
|
},
|
|
},
|
|
mounted() { },
|
|
mounted() { },
|
|
created() {
|
|
created() {
|
|
|
|
+ this.params = {
|
|
|
|
+ ProjectId: this.projectId
|
|
|
|
+ }
|
|
|
|
+ this.getFunctionType();
|
|
|
|
+ this.getStatisticsCount();
|
|
this.getEquipCount();
|
|
this.getEquipCount();
|
|
this.getAssetsCount();
|
|
this.getAssetsCount();
|
|
this.getPartsCount();
|
|
this.getPartsCount();
|
|
|
|
+ this.getSystemCount();
|
|
|
|
+ this.getTenantCount();
|
|
|
|
+ this.getShaftCount();
|
|
},
|
|
},
|
|
computed: {
|
|
computed: {
|
|
- ...mapGetters('layout', ['userInfo', 'projectId', 'projects', 'userId'])
|
|
|
|
|
|
+ ...mapGetters('layout', ['projectId'])
|
|
},
|
|
},
|
|
methods: {
|
|
methods: {
|
|
- getEquipCount() {
|
|
|
|
- this.isLoading = true;
|
|
|
|
|
|
+ getStatisticsCount() {
|
|
|
|
+ // 获取顶部四个统计的数据
|
|
let params = {
|
|
let params = {
|
|
- ProjectId: this.projectId
|
|
|
|
|
|
+ ProjectId: this.projectId,
|
|
|
|
+ Filters: "taskState = -1"
|
|
}
|
|
}
|
|
|
|
+ queryLederDelObject(params, res => {
|
|
|
|
+ this.lederDelObjectCount = res.Count;
|
|
|
|
+ })
|
|
|
|
+
|
|
|
|
+ notSyncRelationData(this.params, res => {
|
|
|
|
+ this.notSyncDataCount = res.Count;
|
|
|
|
+ })
|
|
|
|
+
|
|
|
|
+ postRelationInforAtpism(this.params, res => {
|
|
|
|
+ this.postRelationInforCount = res.Count;
|
|
|
|
+ })
|
|
|
|
+ },
|
|
|
|
+ getEquipCount() {
|
|
// 获取设备总数
|
|
// 获取设备总数
|
|
- countEquip(params, res => {
|
|
|
|
|
|
+ countEquip(this.params, res => {
|
|
this.equipCount = res.Count;
|
|
this.equipCount = res.Count;
|
|
this.getEquipOtherCount();
|
|
this.getEquipOtherCount();
|
|
})
|
|
})
|
|
},
|
|
},
|
|
getEquipOtherCount() {
|
|
getEquipOtherCount() {
|
|
- // 获取设备数据
|
|
|
|
let param = {
|
|
let param = {
|
|
ProjectId: this.projectId,
|
|
ProjectId: this.projectId,
|
|
Filters: "PropertyId isNull"
|
|
Filters: "PropertyId isNull"
|
|
@@ -195,10 +333,7 @@ export default {
|
|
},
|
|
},
|
|
getAssetsCount() {
|
|
getAssetsCount() {
|
|
// 获取资产数据
|
|
// 获取资产数据
|
|
- let params = {
|
|
|
|
- ProjectId: this.projectId
|
|
|
|
- }
|
|
|
|
- countProperty(params, res => {
|
|
|
|
|
|
+ countProperty(this.params, res => {
|
|
// 获取资产总数
|
|
// 获取资产总数
|
|
this.assetsCount = res.Count;
|
|
this.assetsCount = res.Count;
|
|
})
|
|
})
|
|
@@ -231,7 +366,7 @@ export default {
|
|
tips: '',
|
|
tips: '',
|
|
contentValueO: '已验证',
|
|
contentValueO: '已验证',
|
|
contentValueT: '未验证',
|
|
contentValueT: '未验证',
|
|
- text: `已验证${text}`,
|
|
|
|
|
|
+ text: text,
|
|
needCountO: res.Count,
|
|
needCountO: res.Count,
|
|
needCountT: this.assetsCount - res.Count
|
|
needCountT: this.assetsCount - res.Count
|
|
})
|
|
})
|
|
@@ -249,18 +384,142 @@ export default {
|
|
tips: '',
|
|
tips: '',
|
|
contentValueO: '有坐标',
|
|
contentValueO: '有坐标',
|
|
contentValueT: '无坐标',
|
|
contentValueT: '无坐标',
|
|
- text: `有坐标${text}`,
|
|
|
|
|
|
+ text: text,
|
|
needCountO: res.Count,
|
|
needCountO: res.Count,
|
|
needCountT: this.assetsCount - res.Count
|
|
needCountT: this.assetsCount - res.Count
|
|
})
|
|
})
|
|
})
|
|
})
|
|
},
|
|
},
|
|
getPartsCount() {
|
|
getPartsCount() {
|
|
|
|
+ queryPart(this.params, res => {
|
|
|
|
+ this.partsCount = res.Count;
|
|
|
|
+ })
|
|
|
|
+ },
|
|
|
|
+ PartsTypeConversion(item) {
|
|
|
|
+ this.zoneType.map(it => {
|
|
|
|
+ if (item.Name === it.Code) {
|
|
|
|
+ item.Name = it.Name;
|
|
|
|
+ }
|
|
|
|
+ })
|
|
|
|
+ },
|
|
|
|
+ getFunctionType() {
|
|
|
|
+ // 获取默认功能分区类型
|
|
let params = {
|
|
let params = {
|
|
- ProjectId: this.projectId
|
|
|
|
|
|
+ ProjectId: this.projectId,
|
|
|
|
+ type: "GeneralZone",
|
|
|
|
+ data: {
|
|
|
|
+ Filters: "InfoPointCode='RoomFuncType'",
|
|
|
|
+ Projection: ["DataSource", "InfoPointCode"]
|
|
|
|
+ }
|
|
}
|
|
}
|
|
- queryPart(params, res => {
|
|
|
|
- this.partsCount = res.Count;
|
|
|
|
|
|
+ getDataDictionary(params, res => {
|
|
|
|
+ this.functionType = JSON.parse(res.Content[0].DataSource)
|
|
|
|
+ this.getZoneSpaceCount();
|
|
|
|
+ })
|
|
|
|
+ },
|
|
|
|
+ getZoneSpaceCount() {
|
|
|
|
+ queryZoneCount(this.params, res => {
|
|
|
|
+ this.zoneSpaceCount = res.Count;
|
|
|
|
+ })
|
|
|
|
+
|
|
|
|
+ queryPartitionRatio(this.params, res => {
|
|
|
|
+ res.Content.map(item => {
|
|
|
|
+ this.PartsTypeConversion(item);
|
|
|
|
+ this.partProtion.push({
|
|
|
|
+ name: item.Name,
|
|
|
|
+ value: item.Count
|
|
|
|
+ })
|
|
|
|
+ })
|
|
|
|
+ this.business.push({
|
|
|
|
+ title: '各分区占比',
|
|
|
|
+ tips: '',
|
|
|
|
+ needCountO: this.partProtion,
|
|
|
|
+ })
|
|
|
|
+ })
|
|
|
|
+
|
|
|
|
+ queryDefaultFunTypes(this.params, res => {
|
|
|
|
+ res.Content.map(item => {
|
|
|
|
+ this.functionTypeTranstion(item, this.functionType);
|
|
|
|
+ })
|
|
|
|
+ this.business.push({
|
|
|
|
+ title: '默认分区功能类型占比',
|
|
|
|
+ tips: '',
|
|
|
|
+ needCountO: this.funtionType,
|
|
|
|
+ })
|
|
|
|
+ })
|
|
|
|
+ },
|
|
|
|
+ functionTypeTranstion(item, type) {
|
|
|
|
+ type.map(it => {
|
|
|
|
+ if (item.Name === it.Code) {
|
|
|
|
+ item.Name = it.Name;
|
|
|
|
+ this.defaultPart.push({
|
|
|
|
+ name: item.Name,
|
|
|
|
+ value: item.Count
|
|
|
|
+ });
|
|
|
|
+ }
|
|
|
|
+ if (it.Content) {
|
|
|
|
+ this.functionTypeTranstion(item, it.Content)
|
|
|
|
+ }
|
|
|
|
+ })
|
|
|
|
+ },
|
|
|
|
+ getSystemCount() {
|
|
|
|
+ countGeneralSys(this.params, res => {
|
|
|
|
+ this.systemCount = res.Count;
|
|
|
|
+ })
|
|
|
|
+ },
|
|
|
|
+ getTenantCount() {
|
|
|
|
+ queryRentCount(this.params, res => {
|
|
|
|
+ this.rentantCount = res.Count;
|
|
|
|
+ })
|
|
|
|
+
|
|
|
|
+ // 租户-关联业务空间完成度
|
|
|
|
+ queryTenantCompletion(this.params, res => {
|
|
|
|
+ let text = res.Count / this.rentantCount;
|
|
|
|
+ text = this.toPercent(text);
|
|
|
|
+ this.tenant.push({
|
|
|
|
+ title: '关联业务空间完成度',
|
|
|
|
+ tips: '',
|
|
|
|
+ contentValueO: '已关联',
|
|
|
|
+ contentValueT: '未关联',
|
|
|
|
+ text: '',
|
|
|
|
+ needCountO: res.Count,
|
|
|
|
+ needCountT: this.rentantCount - res.Count,
|
|
|
|
+ text: text
|
|
|
|
+ })
|
|
|
|
+ })
|
|
|
|
+ },
|
|
|
|
+ getShaftCount() {
|
|
|
|
+ queryCenoteCount(this.params, res => {
|
|
|
|
+ this.shaftCount = res.Count;
|
|
|
|
+ })
|
|
|
|
+
|
|
|
|
+ queryShaftFunctionType(this.params, res => {
|
|
|
|
+ res.Content.map(item => {
|
|
|
|
+ this.PartsTypeConversion(item);
|
|
|
|
+ this.shaftPartProtion.push({
|
|
|
|
+ name: item.Name,
|
|
|
|
+ value: item.Count
|
|
|
|
+ })
|
|
|
|
+ })
|
|
|
|
+ this.shaft.push({
|
|
|
|
+ title: '按功能类型占比',
|
|
|
|
+ tips: '',
|
|
|
|
+ needCountO: this.shaftPartProtion,
|
|
|
|
+ })
|
|
|
|
+ })
|
|
|
|
+
|
|
|
|
+ ShaftRelationBusinessSpace(this.params, res => {
|
|
|
|
+ let text = this.toPercent(res.Count / this.shaftCount);
|
|
|
|
+ this.shaft.push({
|
|
|
|
+ title: '关联业务空间完成度',
|
|
|
|
+ tips: '',
|
|
|
|
+ contentValueO: '已关联',
|
|
|
|
+ contentValueT: '未关联',
|
|
|
|
+ text: '',
|
|
|
|
+ needCountO: res.Count,
|
|
|
|
+ needCountT: this.shaftCount - res.Count,
|
|
|
|
+ text: text
|
|
|
|
+ })
|
|
})
|
|
})
|
|
},
|
|
},
|
|
toPercent(point) {
|
|
toPercent(point) {
|
|
@@ -312,6 +571,9 @@ export default {
|
|
margin-bottom: 10px;
|
|
margin-bottom: 10px;
|
|
}
|
|
}
|
|
.data {
|
|
.data {
|
|
|
|
+ // background: white;
|
|
|
|
+ margin-bottom: 20px;
|
|
|
|
+ height: 280px;
|
|
.contain-title {
|
|
.contain-title {
|
|
height: 30px;
|
|
height: 30px;
|
|
line-height: 30px;
|
|
line-height: 30px;
|
|
@@ -322,7 +584,8 @@ export default {
|
|
padding-left: 8px;
|
|
padding-left: 8px;
|
|
cursor: default;
|
|
cursor: default;
|
|
i {
|
|
i {
|
|
- margin-left: 12px;
|
|
|
|
|
|
+ margin-left: 6px;
|
|
|
|
+ font-weight: normal;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
@@ -333,10 +596,11 @@ export default {
|
|
flex-wrap: wrap;
|
|
flex-wrap: wrap;
|
|
.show-content {
|
|
.show-content {
|
|
background: white;
|
|
background: white;
|
|
- width: 15%;
|
|
|
|
|
|
+ overflow: hidden;
|
|
margin-right: 10px;
|
|
margin-right: 10px;
|
|
margin-bottom: 10px;
|
|
margin-bottom: 10px;
|
|
border: 1px solid #c9c9c9;
|
|
border: 1px solid #c9c9c9;
|
|
|
|
+ border-radius: 5px;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
</style>
|
|
</style>
|