|
|
@ -1,115 +1,117 @@ |
|
|
|
<template> |
|
|
|
<div class="wrapper"> |
|
|
|
<div class="tool_list"> |
|
|
|
<div class="button_list"> |
|
|
|
<!-- <img class="image_button" :src="refreshImageUrl" @click="refreshData" title="刷新数据"> --> |
|
|
|
<el-switch v-model="showChar" |
|
|
|
inactive-text="显示图表" |
|
|
|
active-color="#35B0A6" |
|
|
|
inactive-color="#FF3B31" title="显示图表" /> |
|
|
|
</div> |
|
|
|
|
|
|
|
</div> |
|
|
|
<template v-if="showChar"> |
|
|
|
|
|
|
|
|
|
|
|
<div class="char_box" v-if="evaluationMainResourceData.length"> |
|
|
|
<Char :DataList="evaluationMainResourceData" Title="主要资源"></Char> |
|
|
|
</div> |
|
|
|
|
|
|
|
<el-progress type="circle" :percentage="evaluationLoadPercent" v-if="evaluationLoadPercent"></el-progress> |
|
|
|
|
|
|
|
<template v-if="evaluationSecondResourceListData.length"> |
|
|
|
<template v-for="(evaluationSecondResourceData,index) in evaluationSecondResourceListData" :key="index"> |
|
|
|
<div class="char_box" v-loading='evaluationSecondResourceLoading'> |
|
|
|
<Char :DataList="evaluationSecondResourceData" :Opacity=0.8 :Title="'次要资源('+(index+1)+')'"></Char> |
|
|
|
</div> |
|
|
|
</template> |
|
|
|
<div class="tool_list"> |
|
|
|
<div class="button_list"> |
|
|
|
<!-- <img class="image_button" :src="refreshImageUrl" @click="refreshData" title="刷新数据"> --> |
|
|
|
<el-switch v-model="showChar" |
|
|
|
inactive-text="显示图表" |
|
|
|
active-color="#35B0A6" |
|
|
|
inactive-color="#FF3B31" |
|
|
|
title="显示图表" /> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<template v-if="showChar"> |
|
|
|
<el-progress type="circle" |
|
|
|
:percentage="evaluationLoadPercent" |
|
|
|
v-if="evaluationLoadPercent"></el-progress> |
|
|
|
<div class="char_box" |
|
|
|
v-if="evaluationMainResourceData.length && evaluationLoadPercent==0"> |
|
|
|
<Char :DataList="evaluationMainResourceData" |
|
|
|
Title="主要资源"></Char> |
|
|
|
</div> |
|
|
|
<template v-if="evaluationSecondResourceListData.length"> |
|
|
|
<template v-for="(evaluationSecondResourceData,index) in evaluationSecondResourceListData" |
|
|
|
:key="index"> |
|
|
|
<div class="char_box" |
|
|
|
v-loading='evaluationSecondResourceLoading'> |
|
|
|
<Char :DataList="evaluationSecondResourceData" |
|
|
|
:Opacity=0.8 |
|
|
|
:Title="'次要资源('+(index+1)+')'"></Char> |
|
|
|
</div> |
|
|
|
</template> |
|
|
|
|
|
|
|
</template> |
|
|
|
</template> |
|
|
|
</div> |
|
|
|
</template> |
|
|
|
<script> |
|
|
|
import Char from './char' |
|
|
|
import refreshImageUrl from '@/assets/icon/refresh.png' |
|
|
|
import {mapState,mapMutations} from 'vuex' |
|
|
|
import Char from './char' |
|
|
|
import refreshImageUrl from '@/assets/icon/refresh.png' |
|
|
|
import { mapState, mapMutations } from 'vuex' |
|
|
|
|
|
|
|
export default { |
|
|
|
components: { |
|
|
|
Char, |
|
|
|
}, |
|
|
|
data() { |
|
|
|
return { |
|
|
|
showChar:true, |
|
|
|
refreshImageUrl:refreshImageUrl, |
|
|
|
}; |
|
|
|
}, |
|
|
|
created(){ |
|
|
|
export default { |
|
|
|
components: { |
|
|
|
Char, |
|
|
|
}, |
|
|
|
data() { |
|
|
|
return { |
|
|
|
showChar: false, |
|
|
|
refreshImageUrl: refreshImageUrl, |
|
|
|
}; |
|
|
|
}, |
|
|
|
created() { |
|
|
|
|
|
|
|
}, |
|
|
|
computed: { |
|
|
|
...mapState("customerForecastDemandReview",[ |
|
|
|
'evaluationLoadPercent', |
|
|
|
'evaluationSecondResourceLoading', |
|
|
|
'evaluationMainResourceLoading', |
|
|
|
'evaluationSecondResourceListData', |
|
|
|
'evaluationMainResourceData' |
|
|
|
}, |
|
|
|
computed: { |
|
|
|
...mapState("customerForecastDemandReview", [ |
|
|
|
'evaluationLoadPercent', |
|
|
|
'evaluationSecondResourceLoading', |
|
|
|
'evaluationMainResourceLoading', |
|
|
|
'evaluationSecondResourceListData', |
|
|
|
'evaluationMainResourceData' |
|
|
|
]) |
|
|
|
}, |
|
|
|
methods: { |
|
|
|
...mapMutations("customerForecastDemandReview",["SET_evaluationLoadPercent"]) |
|
|
|
}, |
|
|
|
}; |
|
|
|
}, |
|
|
|
methods: { |
|
|
|
...mapMutations("customerForecastDemandReview", ["SET_evaluationLoadPercent"]) |
|
|
|
}, |
|
|
|
}; |
|
|
|
</script> |
|
|
|
<style lang="less" scoped> |
|
|
|
.wrapper { |
|
|
|
min-height: 100%; |
|
|
|
width: 100%; |
|
|
|
display: flex; |
|
|
|
flex-direction: column; |
|
|
|
<style lang="less" |
|
|
|
scoped> |
|
|
|
.wrapper { |
|
|
|
min-height: 100%; |
|
|
|
width: 100%; |
|
|
|
display: flex; |
|
|
|
flex-direction: column; |
|
|
|
:deep(.el-progress-circle) { |
|
|
|
|
|
|
|
:deep(.el-progress-circle) { |
|
|
|
|
|
|
|
margin: 100px auto; |
|
|
|
} |
|
|
|
.tool_list{ |
|
|
|
width: 100%; |
|
|
|
height: 30px; |
|
|
|
display: flex; |
|
|
|
justify-content: flex-end; |
|
|
|
|
|
|
|
.button_list { |
|
|
|
width: 120px; |
|
|
|
height: 32px; |
|
|
|
display: flex; |
|
|
|
margin: 100px auto; |
|
|
|
} |
|
|
|
.tool_list { |
|
|
|
width: 100%; |
|
|
|
height: 30px; |
|
|
|
display: flex; |
|
|
|
justify-content: flex-end; |
|
|
|
.button_list { |
|
|
|
width: 120px; |
|
|
|
height: 32px; |
|
|
|
display: flex; |
|
|
|
margin-right: 50px; |
|
|
|
align-items: center; |
|
|
|
.image_button { |
|
|
|
margin: 2px 5px; |
|
|
|
width: 24px; |
|
|
|
height: 24px; |
|
|
|
box-shadow: 2px 2px 0px 0px #DADADA; |
|
|
|
border: 1px solid #FFFFFF; |
|
|
|
} |
|
|
|
.image_button:hover { |
|
|
|
background: #DFDFDF; |
|
|
|
box-shadow: 2px 2px 0px 0px #FFFFFF; |
|
|
|
border-radius: 1px; |
|
|
|
border: 1px solid #DADADA; |
|
|
|
} |
|
|
|
.button_split { |
|
|
|
width: 1px; |
|
|
|
height: 30px; |
|
|
|
background: #DFDFDF; |
|
|
|
box-shadow: 1px 0px 0px 0px #FFFFFF; |
|
|
|
border-radius: 1px; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
.char_box{ |
|
|
|
width:100%; |
|
|
|
height: 300px |
|
|
|
align-items: center; |
|
|
|
.image_button { |
|
|
|
margin: 2px 5px; |
|
|
|
width: 24px; |
|
|
|
height: 24px; |
|
|
|
box-shadow: 2px 2px 0px 0px #DADADA; |
|
|
|
border: 1px solid #FFFFFF; |
|
|
|
} |
|
|
|
.image_button:hover { |
|
|
|
background: #DFDFDF; |
|
|
|
box-shadow: 2px 2px 0px 0px #FFFFFF; |
|
|
|
border-radius: 1px; |
|
|
|
border: 1px solid #DADADA; |
|
|
|
} |
|
|
|
.button_split { |
|
|
|
width: 1px; |
|
|
|
height: 30px; |
|
|
|
background: #DFDFDF; |
|
|
|
box-shadow: 1px 0px 0px 0px #FFFFFF; |
|
|
|
border-radius: 1px; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
.char_box { |
|
|
|
width: 100%; |
|
|
|
height: 300px |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
</style> |