Merge pull request 'fix : 修复数据loading加载' (#307) from dengjie into dev
Reviewed-on: http://git.feashow.cn/clay/tunnel-cloud-web/pulls/307
This commit is contained in:
@@ -4,11 +4,11 @@
|
||||
<div class="fan-speed">
|
||||
<div>
|
||||
<img src="@/assets/images/airInfo/fan-v-icon.png" alt=""/>
|
||||
<div class="fan-info" @click="handleOpenChart(windSpeedId)">
|
||||
<div class="fan-info" @click="handleOpenChart(windSpeedType,windSpeedId)">
|
||||
<div class="input-fan"><span>风速</span>{{ windSpeed }}m/s</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="wind-direction-info" @click="handleOpenChart(windDirectionSpeedId)">
|
||||
<div class="wind-direction-info" @click="handleOpenChart(windDirectionSpeedType,windDirectionSpeedId)">
|
||||
<div class="input-fan"><span>风向</span>{{ windDirection }} °</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -64,10 +64,12 @@ const props = defineProps({
|
||||
const chooseDayRef = ref();
|
||||
const chooseMonthRef = ref();
|
||||
const windSpeed = ref(0)
|
||||
const windDirection = ref(0)
|
||||
const windDirection = ref(null)
|
||||
const loadingText = ref('加载中...')
|
||||
const windSpeedId = ref(0)
|
||||
const windSpeedType = ref(null)
|
||||
const windDirectionSpeedId = ref(0)
|
||||
const windDirectionSpeedType = ref(null)
|
||||
const dialogTitle = ref('风速')
|
||||
const openDialogId = ref(0)
|
||||
const airList = ref([])
|
||||
@@ -85,27 +87,34 @@ watch(() => props.list, (now) => {
|
||||
})
|
||||
}, {deep: true});
|
||||
watch(() => props.airData, (now) => {
|
||||
if (now.sensorList.length !== 0) {
|
||||
if (now.sensorList.length === 0) {
|
||||
airList.value = []
|
||||
} else {
|
||||
getAirInfo(now.sensorList)
|
||||
}
|
||||
} else {
|
||||
if (now.sensorList.length === 0) {
|
||||
airList.value = []
|
||||
windSpeed.value = 0
|
||||
windSpeed.value = null
|
||||
windDirection.value = null
|
||||
} else {
|
||||
getAirInfo(now.sensorList)
|
||||
}
|
||||
// if (now.sensorList.length !== 0) {
|
||||
// if (now.sensorList.length === 0) {
|
||||
// airList.value = []
|
||||
// } else {
|
||||
// getAirInfo(now.sensorList)
|
||||
// }
|
||||
// } else {
|
||||
// airList.value = []
|
||||
// windSpeed.value = 0
|
||||
// }
|
||||
}, {deep: true});
|
||||
const daySelect = (val) => {
|
||||
getChartInfo(openDialogId.value, 'day',val)
|
||||
getChartInfo(openDialogId.value, 'day', val)
|
||||
}
|
||||
const monthSelect = (val) => {
|
||||
getChartInfo(openDialogId.value, 'month',val)
|
||||
getChartInfo(openDialogId.value, 'month', val)
|
||||
}
|
||||
const getChartInfo = (equipmentId, type = 'day',time='') => {
|
||||
const getChartInfo = (equipmentId, type = 'day', time = '') => {
|
||||
isWindSpeedVisited.value = true
|
||||
showSpeedLoading.value = true
|
||||
getEchartsInfo(equipmentId,time, type).then(res => {
|
||||
getEchartsInfo(equipmentId, time, type).then(res => {
|
||||
if (res?.code === 1000) {
|
||||
showSpeedLoading.value = false
|
||||
nextTick(() => {
|
||||
@@ -121,11 +130,11 @@ const getChartInfo = (equipmentId, type = 'day',time='') => {
|
||||
}
|
||||
const handleOpenChart = (id, type) => {
|
||||
selectTimeButton.value = 2
|
||||
nextTick(()=>{
|
||||
if(chooseMonthRef.value){
|
||||
nextTick(() => {
|
||||
if (chooseMonthRef.value) {
|
||||
chooseMonthRef.value.clearData()
|
||||
}
|
||||
if(chooseDayRef.value){
|
||||
if (chooseDayRef.value) {
|
||||
chooseDayRef.value.clearData()
|
||||
}
|
||||
})
|
||||
@@ -134,13 +143,13 @@ const handleOpenChart = (id, type) => {
|
||||
openDialogId.value = id.equipmentId
|
||||
getChartInfo(id.equipmentId, 'day')
|
||||
} else {
|
||||
if (id === 11) {
|
||||
if (id === "windDirection") {
|
||||
dialogTitle.value = '风向'
|
||||
} else {
|
||||
dialogTitle.value = '风速'
|
||||
}
|
||||
openDialogId.value = id
|
||||
getChartInfo(id, 'day')
|
||||
openDialogId.value = type
|
||||
getChartInfo(type, 'day')
|
||||
}
|
||||
|
||||
}
|
||||
@@ -188,9 +197,11 @@ const getAirInfo = (now) => {
|
||||
airObj = changeData(item)
|
||||
airArr.push(airObj)
|
||||
} else if (item.equipmentType === "windSpeed") {
|
||||
windSpeedType.value = item.equipmentType
|
||||
windSpeedId.value = item.equipmentId
|
||||
windSpeed.value = item.value
|
||||
} else if (item.equipmentType === "windDirection") {
|
||||
windDirectionSpeedType.value = item.equipmentType
|
||||
windDirectionSpeedId.value = item.equipmentId
|
||||
windDirection.value = item.value
|
||||
}
|
||||
|
||||
@@ -1,6 +1,10 @@
|
||||
<template>
|
||||
<div id="used-ele" :style="{ backgroundColor: bgImage }" @click="handleOpenChart">
|
||||
<div class="content">
|
||||
<div v-if="electricityConsumptionMonthly===0||monthlySavings===0" class="showNull ">
|
||||
<div class="loading" v-if="loading===0"></div>
|
||||
{{ loading === 0 ? '加载中...' : '暂无数据~' }}
|
||||
</div>
|
||||
<div v-else class="content">
|
||||
<div class="item">
|
||||
<div class="container" ref="length">
|
||||
<div class="value" ref="valueA"></div>
|
||||
@@ -23,6 +27,7 @@
|
||||
<div class="ele-right-bottom-icon"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="digital-tunnel">
|
||||
<el-dialog :close-on-click-modal="false" v-model="isVisited" width="2175px" :modal="false">
|
||||
<div class="left-top-icon"></div>
|
||||
@@ -88,7 +93,8 @@ import {getEleEchartsInfo} from "@/api/largeScreen";
|
||||
|
||||
const props = defineProps({
|
||||
list: Array,
|
||||
eleData: Array
|
||||
eleData: Array,
|
||||
loading: Number
|
||||
});
|
||||
|
||||
const loadingText = ref('加载中...')
|
||||
@@ -114,6 +120,9 @@ const bgImage = computed(() =>
|
||||
? "#2E5589"
|
||||
: "rgba(6,34,71,0.78)"
|
||||
);
|
||||
watch(() => props.loading, (now) => {
|
||||
props.loading = now
|
||||
}, {deep: true});
|
||||
watch(() => props.eleData, (now) => {
|
||||
if (now) {
|
||||
let fanObj = {}
|
||||
@@ -128,8 +137,10 @@ watch(() => props.eleData, (now) => {
|
||||
})
|
||||
getBasicData(now.largeScreenElectricity)
|
||||
}
|
||||
setValueA()
|
||||
setValueB()
|
||||
nextTick(() => {
|
||||
setValueA()
|
||||
setValueB()
|
||||
})
|
||||
}, {deep: true});
|
||||
// watch(() => props.list, (now) => {
|
||||
// console.log(now,props.eleData,'大V大V')
|
||||
|
||||
@@ -283,7 +283,7 @@
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import {ElMessage} from "element-plus";
|
||||
import {ElLoading, ElMessage} from "element-plus";
|
||||
import {getEquipmentList, editEquipment, getTunnelDetail} from "@/api/tunnelManage";
|
||||
import TunnelTitle from "@/components/tunnelTitle/index.vue";
|
||||
const router = useRouter()
|
||||
@@ -362,8 +362,14 @@ const handleChangeMenu = (e) => {
|
||||
}
|
||||
|
||||
const getList = () => {
|
||||
const loading = ElLoading.service({
|
||||
lock: true,
|
||||
text: '正在加载系统资源',
|
||||
background: 'rgba(0, 0, 0, 0.7)',
|
||||
})
|
||||
getEquipmentList(tunnelId).then(res => {
|
||||
if (res.code === 1000) {
|
||||
loading.close()
|
||||
fanData.value = res.data.frequencyChangerList
|
||||
res.data.windPressureSensorList.forEach(item => {
|
||||
item.offset = item.offset + 4000
|
||||
|
||||
@@ -75,7 +75,7 @@
|
||||
<script setup>
|
||||
import TunnelScene from "@/components/content/tunnelScene/TunnelScene.vue";
|
||||
import {editTunnel, getTunnelDetail} from "@/api/tunnelManage";
|
||||
import {ElMessage} from "element-plus";
|
||||
import {ElLoading, ElMessage} from "element-plus";
|
||||
import {initSceneData} from "@/api/tunnelScene";
|
||||
import TunnelTitle from "@/components/tunnelTitle/index.vue";
|
||||
|
||||
@@ -97,8 +97,14 @@ const form = ref({
|
||||
remarks: "",
|
||||
});
|
||||
const getTunnel = () => {
|
||||
const loading = ElLoading.service({
|
||||
lock: true,
|
||||
text: '正在加载系统资源',
|
||||
background: 'rgba(0, 0, 0, 0.7)',
|
||||
})
|
||||
getTunnelDetail(tunnelId).then((res) => {
|
||||
if (res?.code === 1000) {
|
||||
loading.close()
|
||||
form.value = res.data;
|
||||
}
|
||||
});
|
||||
|
||||
@@ -145,6 +145,7 @@ import {editSite, getSiteDetail, getSiteList, addSite, deleteSite} from "@/api/s
|
||||
import {ElMessage, ElMessageBox} from "element-plus";
|
||||
import TunnelTitle from "@/components/tunnelTitle/index.vue";
|
||||
import {getToken} from '@/utils/auth'
|
||||
import {ElLoading} from 'element-plus'
|
||||
|
||||
const router = useRouter()
|
||||
const userId = reactive(router.currentRoute.value.params.userId)
|
||||
@@ -201,28 +202,36 @@ const handleGoHome = () => {
|
||||
router.push('/' + 'siteToHome/' + siteId)
|
||||
}
|
||||
const getList = () => {
|
||||
const loading = ElLoading.service({
|
||||
lock: true,
|
||||
text: '正在加载系统资源',
|
||||
background: 'rgba(0, 0, 0, 0.7)',
|
||||
})
|
||||
getSiteList({
|
||||
userId: userId,
|
||||
...pageInfo
|
||||
}).then((res) => {
|
||||
total.value = res.data.total;
|
||||
if (total.value == 0) {
|
||||
if (res.code === 1000) {
|
||||
loading.close()
|
||||
total.value = res.data.total;
|
||||
if (total.value == 0) {
|
||||
|
||||
} else {
|
||||
showAddIcon.value = total.value % 6 !== 0;
|
||||
}
|
||||
showFirst.value = total.value / pageInfo.pageSize > 1;
|
||||
res.data.rows.map(item => {
|
||||
if (item.tunnelList === null || item.tunnelList.length === 0) {
|
||||
item.info = info.value
|
||||
} else {
|
||||
item.info = item.tunnelList[0]
|
||||
showAddIcon.value = total.value % 6 !== 0;
|
||||
}
|
||||
item.checked = false
|
||||
})
|
||||
|
||||
siteList.value = res.data.rows;
|
||||
showFirst.value = total.value / pageInfo.pageSize > 1;
|
||||
res.data.rows.map(item => {
|
||||
if (item.tunnelList === null || item.tunnelList.length === 0) {
|
||||
item.info = info.value
|
||||
} else {
|
||||
item.info = item.tunnelList[0]
|
||||
}
|
||||
item.checked = false
|
||||
})
|
||||
siteList.value = res.data.rows;
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
getList()
|
||||
const handleClickSite = (type) => {
|
||||
@@ -786,8 +795,9 @@ const handleCurrentChange = (val) => {
|
||||
color: #60DDDE;
|
||||
font-size: 38px;
|
||||
font-weight: bold;
|
||||
|
||||
:deep(.el-pagination.is-background ) {
|
||||
.btn-next,.btn-prev {
|
||||
.btn-next, .btn-prev {
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
|
||||
@@ -160,7 +160,7 @@
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import {ElMessage, ElMessageBox} from "element-plus";
|
||||
import {ElLoading, ElMessage, ElMessageBox} from "element-plus";
|
||||
import {getTunnelList, addTunnel, deleteTunnel} from "@/api/tunnelManage";
|
||||
import {getSiteDrawing, getSiteDetail} from "@/api/site";
|
||||
import TunnelTitle from "@/components/tunnelTitle/index.vue";
|
||||
@@ -323,11 +323,17 @@ const getTunnel = (id) => {
|
||||
}
|
||||
getTunnel(siteId)
|
||||
const getList = () => {
|
||||
const loading = ElLoading.service({
|
||||
lock: true,
|
||||
text: '正在加载系统资源',
|
||||
background: 'rgba(0, 0, 0, 0.7)',
|
||||
})
|
||||
getTunnelList({
|
||||
siteId: siteId,
|
||||
...pageInfo
|
||||
}).then(res => {
|
||||
if (res.code === 1000) {
|
||||
loading.close()
|
||||
total.value = res.data.total
|
||||
tunnelList.value = res.data.rows
|
||||
showFirst.value = total.value / pageInfo.pageSize >= 1;
|
||||
|
||||
@@ -42,7 +42,7 @@
|
||||
:close-on-click-modal="false" :close-on-press-escape="false">
|
||||
<fan-info v-if="showFan" :list="socketData.leftData" :fan-data="largeScreenData"
|
||||
:transducer-data="largeScreenData" :loading="showFanLoading" :tunnel-id="tunnelId"/>
|
||||
<used-ele v-if="showFan" :list="socketData.leftData" :ele-data="largeScreenData"/>
|
||||
<used-ele v-if="showFan" :list="socketData.leftData" :loading="showUsedLoading" :ele-data="largeScreenData"/>
|
||||
</el-drawer>
|
||||
<div v-if="drawerLeft" class="left-arrow" @click="closeLeft"></div>
|
||||
<div v-else class="shrink-left" @click="closeLeft"></div>
|
||||
@@ -52,7 +52,7 @@
|
||||
:close-on-click-modal="false" :close-on-press-escape="false">
|
||||
<wind-pressure-list v-if="showFan" :list="socketData.windPressure" :win-data="largeScreenData"
|
||||
:loading="showWindLoading"/>
|
||||
<air-info v-if="showFan" :list="socketData.sensor" :air-data="largeScreenData"/>
|
||||
<air-info v-if="showFan" :list="socketData.sensor" :air-data="largeScreenData" />
|
||||
<bad-gas-info v-if="showFan" :list="socketData.sensor" :bad-gas-data="largeScreenData" :tunnelId="tunnelId"
|
||||
:loading="showBadLoading"/>
|
||||
</el-drawer>
|
||||
@@ -187,6 +187,7 @@ const loading = ref(false);
|
||||
const tableEmptyText = ref("加载中~");
|
||||
const initialIndex = ref(0)
|
||||
const showFanLoading = ref(0)
|
||||
const showUsedLoading = ref(0)
|
||||
const showWindLoading = ref(0)
|
||||
const showBadLoading = ref(0)
|
||||
const drawerRight = ref(true);
|
||||
@@ -410,6 +411,12 @@ const getScreenInfo = (id) => {
|
||||
} else {
|
||||
showFanLoading.value = 1
|
||||
}
|
||||
const useEleData=res.data.largeScreenElectricity
|
||||
if(useEleData.electricityConsumptionCount==null||useEleData.monthlySavings==null){
|
||||
showUsedLoading.value = 0
|
||||
}else {
|
||||
showUsedLoading.value = 1
|
||||
}
|
||||
if (res.data.windPressureSensorList.length !== 0) {
|
||||
res.data.windPressureSensorList.forEach((item) => {
|
||||
option = {
|
||||
@@ -476,7 +483,6 @@ const getList = () => {
|
||||
}
|
||||
})
|
||||
}
|
||||
//根据站点id获取隧道信息option
|
||||
|
||||
let largeScreen = computed(() => largeScreenData)
|
||||
const getTunnel = (id) => {
|
||||
|
||||
@@ -143,7 +143,7 @@
|
||||
<script setup>
|
||||
import {Search} from '@element-plus/icons-vue'
|
||||
import {addUser, editUser, getUser, getRoleOption, deleteUser, getUserDetail} from "@/api/user";
|
||||
import {ElMessage, ElMessageBox} from "element-plus";
|
||||
import {ElLoading, ElMessage, ElMessageBox} from "element-plus";
|
||||
import {getTunnelOption} from "@/api/tunnel";
|
||||
import TunnelTitle from "@/components/tunnelTitle/index.vue";
|
||||
|
||||
@@ -264,12 +264,18 @@ const getRoleOptionInfo = () => {
|
||||
}
|
||||
getRoleOptionInfo()
|
||||
const getInfo = () => {
|
||||
const loading = ElLoading.service({
|
||||
lock: true,
|
||||
text: '正在加载系统资源',
|
||||
background: 'rgba(0, 0, 0, 0.7)',
|
||||
})
|
||||
getUser({
|
||||
siteId: siteId,
|
||||
userName: username.value,
|
||||
...pageInfo
|
||||
}).then(res => {
|
||||
if (res.code === 1000) {
|
||||
loading.close()
|
||||
userData.value = res.data.rows
|
||||
total.value = res.data.total
|
||||
showFirst.value = total.value / pageInfo.pageSize >= 1;
|
||||
|
||||
Reference in New Issue
Block a user