2023-11-30 10:48:06 +08:00
|
|
|
<template>
|
|
|
|
|
<div class="provider_list">
|
|
|
|
|
<div class="provider_title">
|
2023-12-01 15:05:38 +08:00
|
|
|
<div class="sub_title" @click="subTab('provider')" :class="{
|
|
|
|
|
'activeSub': subActive == 'provider'
|
|
|
|
|
}">
|
2023-11-30 10:48:06 +08:00
|
|
|
热门供应商
|
|
|
|
|
</div>
|
2023-12-01 15:05:38 +08:00
|
|
|
<div class="sub_title" @click="subTab('hotEquipment')" :class="{
|
|
|
|
|
'activeSub': subActive == 'hotEquipment'
|
|
|
|
|
}">
|
2023-11-30 10:48:06 +08:00
|
|
|
热门装备
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
2023-12-01 15:05:38 +08:00
|
|
|
<div class="provider_content" v-if="subActive == 'provider'">
|
2023-11-30 10:48:06 +08:00
|
|
|
<div class="provider_item" v-for="(item, index) in providerInfo.list" :key="index">
|
|
|
|
|
<div class="provider_item_left">
|
2023-12-02 18:12:58 +08:00
|
|
|
<div class="pro_item_icon" :class="{ 'inThree': index + 1 <= 3, 'afterThree': index + 1 > 3 }">
|
|
|
|
|
<img :src="`/src/assets/img/index${index + 1 <= 3 ? index + 1 : 4}.png`" alt=""
|
2023-11-30 10:48:06 +08:00
|
|
|
class="pro_item_icon_img">
|
|
|
|
|
</div>
|
|
|
|
|
<div class="pro_item_title overflow">
|
2023-12-02 18:12:58 +08:00
|
|
|
{{ item.ownCo }}
|
2023-11-30 10:48:06 +08:00
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="device_count">
|
2023-12-02 18:12:58 +08:00
|
|
|
设备数:{{ item.count }}
|
2023-11-30 10:48:06 +08:00
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
2023-12-01 15:05:38 +08:00
|
|
|
<div class="cloud_words_out" v-else>
|
|
|
|
|
<CloudWords></CloudWords>
|
|
|
|
|
</div>
|
2023-11-30 10:48:06 +08:00
|
|
|
</div>
|
|
|
|
|
</template>
|
|
|
|
|
<script setup lang="ts">
|
2023-12-01 15:05:38 +08:00
|
|
|
import CloudWords from "components/echartsCom/CloudWords.vue"
|
2023-12-02 18:12:58 +08:00
|
|
|
import { apiMaDevInfoHotList } from "http/api/echartApi"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
const providerInfo: any = reactive({
|
|
|
|
|
list: []
|
2023-11-30 10:48:06 +08:00
|
|
|
})
|
|
|
|
|
|
2023-12-01 16:29:15 +08:00
|
|
|
const subActive = ref("provider")
|
2023-12-01 15:05:38 +08:00
|
|
|
// provider hotEquipment
|
|
|
|
|
const subTab = (type: any) => {
|
|
|
|
|
subActive.value = type
|
|
|
|
|
}
|
2023-11-30 10:48:06 +08:00
|
|
|
|
2023-12-02 18:12:58 +08:00
|
|
|
const InitApiMaDevInfoHotList = async () => {
|
|
|
|
|
// 根据求出租信息查询对应的数量:
|
|
|
|
|
try {
|
|
|
|
|
const res: any = await apiMaDevInfoHotList()
|
|
|
|
|
console.log("apiMaDevInfoHotList", res)
|
|
|
|
|
providerInfo.list = res
|
|
|
|
|
} catch (error) {
|
|
|
|
|
console.log(error)
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
onBeforeMount(() => {
|
|
|
|
|
InitApiMaDevInfoHotList()
|
|
|
|
|
})
|
|
|
|
|
|
2023-11-30 10:48:06 +08:00
|
|
|
|
|
|
|
|
|
|
|
|
|
</script>
|
|
|
|
|
<style scoped lang="scss">
|
|
|
|
|
.provider_list {
|
|
|
|
|
width: 332px;
|
|
|
|
|
height: 456px;
|
|
|
|
|
background-color: rgba($color: #011B37, $alpha: 0.6);
|
|
|
|
|
padding: 0 22px;
|
|
|
|
|
box-sizing: border-box;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.provider_title {
|
|
|
|
|
display: flex;
|
|
|
|
|
justify-content: flex-start;
|
|
|
|
|
align-items: center;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.sub_title {
|
|
|
|
|
font-size: 12px;
|
|
|
|
|
color: $main-color;
|
|
|
|
|
padding-top: 24px;
|
|
|
|
|
padding-left: 26px;
|
|
|
|
|
|
|
|
|
|
}
|
2023-12-01 15:05:38 +08:00
|
|
|
|
|
|
|
|
.activeSub {
|
|
|
|
|
font-size: 18px;
|
|
|
|
|
color: $main-color;
|
|
|
|
|
padding-top: 20px;
|
|
|
|
|
}
|
2023-11-30 10:48:06 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.provider_content {
|
|
|
|
|
padding-top: 12px;
|
2023-12-02 18:12:58 +08:00
|
|
|
overflow-y: auto;
|
|
|
|
|
height: 396px;
|
2023-11-30 10:48:06 +08:00
|
|
|
|
|
|
|
|
.provider_item {
|
2023-12-02 18:12:58 +08:00
|
|
|
width: 280px;
|
2023-11-30 10:48:06 +08:00
|
|
|
height: 40px;
|
|
|
|
|
padding: 0 12px;
|
|
|
|
|
box-sizing: border-box;
|
|
|
|
|
display: flex;
|
|
|
|
|
justify-content: space-between;
|
|
|
|
|
align-items: center;
|
|
|
|
|
background: rgba(20, 50, 67, 0.7);
|
|
|
|
|
margin-bottom: 8px;
|
|
|
|
|
|
|
|
|
|
.provider_item_left {
|
|
|
|
|
display: flex;
|
|
|
|
|
justify-content: flex-start;
|
|
|
|
|
align-items: center;
|
|
|
|
|
|
|
|
|
|
.pro_item_icon {
|
|
|
|
|
width: 42px;
|
|
|
|
|
height: 42px;
|
|
|
|
|
margin-top: 12px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.inThree {
|
|
|
|
|
margin-left: -6px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.afterThree {}
|
|
|
|
|
|
|
|
|
|
.pro_item_title {
|
|
|
|
|
font-size: 14px;
|
|
|
|
|
width: 147px;
|
|
|
|
|
color: #fff;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.device_count {
|
|
|
|
|
color: rgba($color: #fff, $alpha: 0.7);
|
|
|
|
|
font-size: 12px;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2023-12-02 18:12:58 +08:00
|
|
|
&::-webkit-scrollbar {
|
|
|
|
|
display: none;
|
|
|
|
|
}
|
|
|
|
|
|
2023-11-30 10:48:06 +08:00
|
|
|
}
|
2023-12-01 15:05:38 +08:00
|
|
|
|
|
|
|
|
.cloud_words_out {
|
|
|
|
|
width: 292px;
|
|
|
|
|
height: 340px;
|
|
|
|
|
margin-top: 12px;
|
2023-12-01 16:29:15 +08:00
|
|
|
background-color: rgba($color: #011B37, $alpha: 0.6);
|
2023-12-02 18:12:58 +08:00
|
|
|
}</style>
|