From 7b0d7cfb998b584516df9bd34b9ec030b3f4e4cf Mon Sep 17 00:00:00 2001 From: liukangdong <898885815@qq.com> Date: 星期五, 20 十二月 2024 13:51:44 +0800 Subject: [PATCH] ll --- screen/src/views/LogisticsCenter.vue | 879 ++++++++++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 669 insertions(+), 210 deletions(-) diff --git a/screen/src/views/LogisticsCenter.vue b/screen/src/views/LogisticsCenter.vue index 5e96964..cd1d5e6 100644 --- a/screen/src/views/LogisticsCenter.vue +++ b/screen/src/views/LogisticsCenter.vue @@ -3,7 +3,7 @@ <div class="main_app"> <img src="@/assets/images/LogisticsCenter/bg@2x.png" class="main_bg" alt="" /> <div class="main_header"> - <img src="@/assets/images/maintitle.gif" class="main_header_bg" alt="" /> + <!-- <img src="@/assets/images/maintitle.gif" class="main_header_bg" alt="" /> --> <div class="title">鍏ㄧ渷鐗╂祦鍦ㄩ��</div> <div class="time_wrap"> <span class="date">{{ date }}</span> @@ -25,6 +25,13 @@ <div class="title"> <img src="@/assets/images/LogisticsCenter/ic_title@2x.png" class="icon" alt="" /> <div>鏈勾绱鍑哄簱閲�</div> + </div> + <div class="tabs"> + <div class="tab" :class="{ active: activeTab1 == 0 }" @click="tab1Click(0)">鏈懆</div> + <div class="separate"></div> + <div class="tab" :class="{ active: activeTab1 == 1 }" @click="tab1Click(1)">鏈湀</div> + <div class="separate"></div> + <div class="tab" :class="{ active: activeTab1 == 2 }" @click="tab1Click(2)">鏈勾</div> </div> </div> <div class="content_wrap"> @@ -125,7 +132,14 @@ <div class="item"> <img src="@/assets/images/LogisticsCenter/ic_jinrijihua@2x.png" alt=""> <div class="content"> - <div class="name">浠婃棩璁″垝閲�</div> + <div class="name">褰撴棩璁㈠崟閲�</div> + <div class="num"><span class="blue">{{ cneterData.outPlanTotal }}</span>涓囨敮</div> + </div> + </div> + <div class="item"> + <img src="@/assets/images/LogisticsCenter/ic_jinrijihua@2.png" alt=""> + <div class="content"> + <div class="name">褰撴棩璁″垝閲�</div> <div class="num"><span>{{ cneterData.outPlanTotal }}</span>涓囨敮</div> <div class="unit">杞︽锛歿{ cneterData.outPlanTimes }}</div> </div> @@ -134,15 +148,18 @@ <img src="@/assets/images/LogisticsCenter/ic_jinrichuku@2x.png" alt=""> <div class="content"> <div class="name">浠婃棩鍑哄簱閲�</div> - <div class="num"><span class="today">{{ cneterData.outTotal }}</span>涓囨敮</div> - <div class="unit">杞︽锛歿{ cneterData.outTimes }}</div> + <div class="num" v-if="cneterData.outPlanTotal && cneterData.outTotal"><span class="finish">{{ + cneterData.outPlanTotal - cneterData.outTotal }}</span>涓囨敮</div> + <div class="unit" v-if="cneterData.outPlanTotal && cneterData.outTotal">杞︽锛歿{ cneterData.outPlanTimes + - + cneterData.outTimes }}</div> </div> </div> <div class="item"> <img src="@/assets/images/LogisticsCenter/ic_jinriweichu@2x.png" alt=""> <div class="content"> - <div class="name">浠婃棩鏈嚭搴撻噺</div> - <div class="num" v-if="cneterData.outPlanTotal && cneterData.outTotal"><span class="finish">{{ + <div class="name">鍓╀綑浠诲姟閲�</div> + <div class="num" v-if="cneterData.outPlanTotal && cneterData.outTotal"><span class="today">{{ cneterData.outPlanTotal - cneterData.outTotal }}</span>涓囨敮</div> <div class="unit" v-if="cneterData.outPlanTotal && cneterData.outTotal">杞︽锛歿{ cneterData.outPlanTimes - @@ -151,12 +168,50 @@ </div> </div> <div class="footer"> - <span>鍗犲嚭搴撹兘鍔�</span> - <span class="num">80%</span> + <div class="wrap"> + <div class="content"> + <div class="scale">0</div> + <div class="box"> + <div class="tag"> + <div class="icon"></div> + <span>浠婃棩鍑哄簱</span> + </div> + </div> + <div class="box box1"> + <div class="tag tag1"> + <div class="icon"></div> + <span>褰撴棩璁″垝</span> + </div> + </div> + </div> + <div class="side"> + <div class="box"></div> + <div class="scale" style="left: -12px;">8h</div> + <div class="scale scale1">鏈�澶�</div> + </div> + </div> </div> </div> <div class="center_box_two"> <div class="echart_map" ref="mapEchart" id="echart_map"></div> + <div class="list"> + <div class="item"> + <div class="icon"></div> + <div class="text">鍑哄簱閲�10w浠ヤ笂</div> + </div> + <div class="item"> + <div class="icon icon2"></div> + <div class="text">鍑哄簱閲�5-10w</div> + </div> + <div class="item"> + <div class="icon icon3"></div> + <div class="text">鍑哄簱閲�2-5w</div> + </div> + <div class="item"> + <div class="icon icon4"></div> + <div class="text">鍑哄簱閲�2w浠ヤ笅</div> + </div> + </div> </div> </div> <div class="right_box"> @@ -167,70 +222,40 @@ </div> <img src="@/assets/images/title@2x.png" class="bg" alt="" /> </div> - <div class="right_box_one"> - <div class="second_title"> - <div class="title"> - <img src="@/assets/images/LogisticsCenter/ic_title@2x.png" class="icon" alt="" /> - <div>鏈勾绱鍏ュ簱閲�</div> - </div> - </div> - <div class="content_wrap"> - <div class="num_wrap"> - <div class="num_list" v-if="cneterData.yearInTotal"> - <div class="num" v-for="i in cneterData.yearInTotal + ''"> - {{ i }} - <img class="bg" src="@/assets/images/LogisticsCenter/bg_number@2x.png" alt=""> - </div> - </div> - <div class="content"> - <div class="unit_wrap"> - <span class="la">鍚屾瘮</span> - <img src="@/assets/images/ic_up.png" class="icon" alt=""> - <span>{{ cneterData.yearInTotalOnYear }}%</span> - <span class="la" style="margin-left: 30px;margin-right: 10px;">绱鍑哄簱杞︽</span> - <span>{{ cneterData.yearInTimes }}</span> - </div> - - </div> - </div> - <div class="static_wrap"> - <div class="echart_wrap"> - <div class="echart3" id="echart3"></div> - <div class="pie_text"> - <div class="fs30">{{ cneterData.PlanTotal || 30 }}%</div> - </div> - </div> - <div class="text">璁″垝瀹屾垚閲�</div> - </div> - </div> - </div> - <div class="right_box_two"> - <div class="second_title"> - <div class="title"> - <img src="@/assets/images/LogisticsCenter/ic_title@2x.png" class="icon" alt="" /> - <div>杩涢攢瀛樿繍钀�</div> - </div> - <div class="tabs"> - <div :class="{ active: activeTabs == 0 }" class="tab" @click="tabsClick4(0)">7澶�</div> - <div class="separate"></div> - <div :class="{ active: activeTabs == 1 }" class="tab" @click="tabsClick4(1)">30澶�</div> - <div class="separate"></div> - <div :class="{ active: activeTabs == 2 }" class="tab" @click="tabsClick4(2)">1骞�</div> - </div> - </div> - <div class="echart4_wrap"> - <div class="echart4" id="echart4"></div> - </div> - </div> <div class="right_box_three"> <div class="second_title"> <div class="title"> <img src="@/assets/images/LogisticsCenter/ic_title@2x.png" class="icon" alt="" /> <div>搴撳瓨鍒╃敤鐜�</div> </div> + <div class="side">鍏ㄧ渷锛�<span>100<span class="unit">涓囨敮 |</span> 40.6%</span></div> </div> <div class="echart5_wrap"> <div class="echart5" id="echart5"></div> + </div> + </div> + <div class="right_box_three"> + <div class="second_title"> + <div class="title"> + <img src="@/assets/images/LogisticsCenter/ic_title@2x.png" class="icon" alt="" /> + <div>鍑哄簱鑳藉姏鍒╃敤鐜�</div> + </div> + <div class="side">鍏ㄧ渷锛�<span>100<span class="unit">涓囨敮 |</span> 40.6%</span></div> + </div> + <div class="echart5_wrap"> + <div class="echart5" id="echart6"></div> + </div> + </div> + <div class="right_box_three"> + <div class="second_title"> + <div class="title"> + <img src="@/assets/images/LogisticsCenter/ic_title@2x.png" class="icon" alt="" /> + <div>杩愮敤璧勬簮鍒╃敤鐜�</div> + </div> + <div class="side">鍏ㄧ渷锛�<span>100<span class="unit">涓囨敮 |</span> 40.6%</span></div> + </div> + <div class="echart5_wrap"> + <div class="echart5" id="echart7"></div> </div> </div> </div> @@ -631,7 +656,7 @@ left: '3%', right: '4%', bottom: '3%', - top: '15%', + top: '16%', containLabel: true }, xAxis: { @@ -657,12 +682,16 @@ }, series: [ { - name: '鍦ㄩ��', + name: '鏈惎杩�', type: 'bar', stack: 'total', barWidth: 14, label: { - show: true + show: true, + textStyle: { + color: '#000000', + fontSize: 10 + } }, emphasis: { focus: 'series' @@ -678,10 +707,49 @@ y2: 0, colorStops: [{ offset: 0, - color: '#204d75' + color: '#fadf74' + }, + { + offset: 0.3, + color: '#f7cd5e' }, { offset: 1, - color: '#2f6eae' + color: '#eea33b' + }] + } + } + }, + }, + { + name: '鍦ㄩ��', + type: 'bar', + stack: 'total', + barWidth: 14, + label: { + show: true + }, + emphasis: { + focus: 'series' + }, + textStyle: { + color: '#000000', + fontSize: 10 + }, + data: list.map(i => i.inTransitNum), + itemStyle: { + normal: { + color: { + type: 'linear', + x: 0, + y: 0, + x2: 1, + y2: 0, + colorStops: [{ + offset: 0, + color: '#60d1f9' + }, { + offset: 1, + color: '#4eacf7' }] } } @@ -695,6 +763,10 @@ label: { show: true }, + textStyle: { + color: '#000000', + fontSize: 10 + }, itemStyle: { normal: { color: { @@ -705,10 +777,10 @@ y2: 0, colorStops: [{ offset: 0, - color: '#3e8593' + color: '#71f3ce' }, { offset: 1, - color: '#5cc2d2' + color: '#4da999' }] } } @@ -766,6 +838,7 @@ { name: '铓屽煚浠�', id: 4 }, ]) const activeCity = ref({ name: '鍏ㄧ渷', id: 0 }) +const activeTab1 = ref(0) const colors = ['#0193FE', '#FFB642'] const StockOutData = ref([]) const cityClick = (item) => { @@ -810,6 +883,10 @@ arr.sort((a, b) => b.value - a.value) StockOutData.value = arr initEchart1() +} +const tab1Click = () => { + activeTab1.value = val + } const getData3 = () => { getStorecenterData().then(res => { @@ -1062,7 +1139,7 @@ getStoreOperationList({ queryType: activeTabs.value }).then(res => { console.log('res', res) dataList4.value = res.data || [] - initEchart4() + // initEchart4() }) } @@ -1075,8 +1152,8 @@ legend: { itemGap: 12, // icon: 'circle', - right: '12px', - top: '0', + right: '16%', + top: '1%', data: ['鎬诲簱瀛�', '褰撳墠搴撳瓨', '搴撳瓨鍒╃敤鐜�'], itemWidth: 20, itemHeight: 10, @@ -1089,7 +1166,7 @@ left: '3%', right: '0%', bottom: '3%', - top: '24%', + top: '18%', containLabel: true }, tooltip: { @@ -1118,8 +1195,8 @@ nameTextStyle: { color: '#869CC9', }, - offset: 0, name: '涓囨敮', + nameGap: 24, type: 'value', axisLabel: { show: true, @@ -1140,9 +1217,10 @@ { type: 'value', name: '%', + nameGap: 24, min: 0, max: 100, - // interval: 5, + interval: 25, axisLabel: { formatter: '{value}' }, @@ -1153,22 +1231,23 @@ { name: '鎬诲簱瀛�', type: 'bar', - barWidth: 8, + barWidth: 10, barGap: '60%', label: { show: false, position: 'top', color: '#fff', }, + yAxisIndex: 0, itemStyle: { color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [ { offset: 0, - color: '#5bc7d5' + color: '#2e6bf3' }, { offset: 1, - color: '#1a3f55' + color: '#5fcbab' } ], false), lineStyle: { @@ -1182,21 +1261,26 @@ { name: '褰撳墠搴撳瓨', type: 'bar', - barWidth: 8, + barWidth: 10, label: { show: false, position: 'top', color: '#fff', }, + yAxisIndex: 0, itemStyle: { color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [ { offset: 0, - color: '#edaf3d' + color: '#eda13a' + }, + { + offset: 0.6, + color: '#dfb44e' }, { offset: 1, - color: '#323522' + color: '#ccc16c' } ], false), lineStyle: { @@ -1210,16 +1294,365 @@ { name: '搴撳瓨鍒╃敤鐜�', type: 'line', - smooth: true, + smooth: false, showAllSymbol: true, symbol: 'none', lineStyle: { - color: "#3d87e5" + color: "#9eabc2" }, + yAxisIndex: 1, label: { show: false, position: 'top', color: '#fff', + // formatter: '{c}' + '%', + }, + data: dataList5.value.map(i => i.stockRataNum) + } + ] + }) + + window.addEventListener('resize', function () {//鎵ц + myChart.resize() + }) +} +const initEchart6 = () => { + // 鍩轰簬鍑嗗濂界殑dom锛屽垵濮嬪寲echarts瀹炰緥 + const myChart = echarts.init(document.getElementById('echart6')) + // 缁樺埗鍥捐〃 + myChart.setOption({ + legend: { + itemGap: 12, + // icon: 'circle', + right: '16%', + top: '1%', + data: ['鍑哄簱鑳藉姏', '褰撴棩鍑哄簱閲�', '搴撳瓨鍒╃敤鐜�'], + itemWidth: 20, + itemHeight: 10, + textStyle: { + color: '#fff', + borderColor: '#fff' + }, + }, + grid: { + left: '3%', + right: '0%', + bottom: '3%', + top: '18%', + containLabel: true + }, + tooltip: { + trigger: 'axis' + }, + xAxis: [{ + nameGap: 5, + type: 'category', + axisLine: { + show: true, + lineStyle: { + color: '#999' + }, + }, + axisLabel: { + color: '#869CC9' + // fontSize: 24, + }, + axisTick: { + show: false, + }, + data: dataList5.value.map(i => i.placeName), + }], + yAxis: [ + { + nameTextStyle: { + color: '#869CC9', + }, + name: '涓囨敮', + nameGap: 24, + type: 'value', + axisLabel: { + show: true, + color: "#869CC9", + }, + axisLine: { + show: true, + }, + splitLine: { + show: true, + lineStyle: { + width: 1, + color: "rgba(49,105,129,0.4)", + type: 'dashed' + } + }, + }, + { + type: 'value', + name: '%', + nameGap: 24, + min: 0, + max: 100, + interval: 25, + axisLabel: { + formatter: '{value}' + }, + splitLine: false + } + ], + series: [ + { + name: '鍑哄簱鑳藉姏', + type: 'bar', + barWidth: 10, + barGap: '60%', + label: { + show: false, + position: 'top', + color: '#fff', + }, + yAxisIndex: 0, + itemStyle: { + color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [ + { + offset: 0, + color: '#2e6bf3' + }, + { + offset: 1, + color: '#5fcbab' + } + ], false), + lineStyle: { + width: 1, + type: 'solid' + }, + barBorderRadius: [30, 30, 0, 0], + }, + data: dataList5.value.map(i => i.totalStockNum), + barGap: '-100%' // 璁剧疆鏌卞瓙瀹屽叏閲嶅彔 + + }, + { + name: '褰撴棩鍑哄簱閲�', + type: 'bar', + barWidth: 10, + label: { + show: false, + position: 'top', + color: '#fff', + }, + yAxisIndex: 0, + itemStyle: { + color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [ + { + offset: 0, + color: '#eda13a' + }, + { + offset: 0.6, + color: '#dfb44e' + }, + { + offset: 1, + color: '#ccc16c' + } + ], false), + lineStyle: { + width: 1, + type: 'solid' + }, + barBorderRadius: [30, 30, 0, 0], + }, + data: dataList5.value.map(i => i.nowStockNum), + barGap: '-100%' // 璁剧疆鏌卞瓙瀹屽叏閲嶅彔 + }, + { + name: '搴撳瓨鍒╃敤鐜�', + type: 'line', + smooth: false, + showAllSymbol: true, + symbol: 'none', + lineStyle: { + color: "#9eabc2" + }, + yAxisIndex: 1, + label: { + show: false, + position: 'top', + color: '#fff', + // formatter: '{c}' + '%', + }, + data: dataList5.value.map(i => i.stockRataNum) + } + ] + }) + + window.addEventListener('resize', function () {//鎵ц + myChart.resize() + }) +} +const initEchart7 = () => { + // 鍩轰簬鍑嗗濂界殑dom锛屽垵濮嬪寲echarts瀹炰緥 + const myChart = echarts.init(document.getElementById('echart7')) + // 缁樺埗鍥捐〃 + myChart.setOption({ + legend: { + itemGap: 12, + // icon: 'circle', + right: '16%', + top: '1%', + data: ['鎬诲簱瀛�', '褰撳墠搴撳瓨', '搴撳瓨鍒╃敤鐜�'], + itemWidth: 20, + itemHeight: 10, + textStyle: { + color: '#fff', + borderColor: '#fff' + }, + }, + grid: { + left: '3%', + right: '0%', + bottom: '3%', + top: '18%', + containLabel: true + }, + tooltip: { + trigger: 'axis' + }, + xAxis: [{ + nameGap: 5, + type: 'category', + axisLine: { + show: true, + lineStyle: { + color: '#999' + }, + }, + axisLabel: { + color: '#869CC9' + // fontSize: 24, + }, + axisTick: { + show: false, + }, + data: dataList5.value.map(i => i.placeName), + }], + yAxis: [ + { + nameTextStyle: { + color: '#869CC9', + }, + name: '涓囨敮', + nameGap: 24, + type: 'value', + axisLabel: { + show: true, + color: "#869CC9", + }, + axisLine: { + show: true, + }, + splitLine: { + show: true, + lineStyle: { + width: 1, + color: "rgba(49,105,129,0.4)", + type: 'dashed' + } + }, + }, + { + type: 'value', + name: '%', + nameGap: 24, + min: 0, + max: 100, + interval: 25, + axisLabel: { + formatter: '{value}' + }, + splitLine: false + } + ], + series: [ + { + name: '鎬诲簱瀛�', + type: 'bar', + barWidth: 10, + barGap: '60%', + label: { + show: false, + position: 'top', + color: '#fff', + }, + yAxisIndex: 0, + itemStyle: { + color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [ + { + offset: 0, + color: '#2e6bf3' + }, + { + offset: 1, + color: '#5fcbab' + } + ], false), + lineStyle: { + width: 1, + type: 'solid' + }, + barBorderRadius: [30, 30, 0, 0], + }, + data: dataList5.value.map(i => i.totalStockNum) + }, + { + name: '褰撳墠搴撳瓨', + type: 'bar', + barWidth: 10, + label: { + show: false, + position: 'top', + color: '#fff', + }, + yAxisIndex: 0, + itemStyle: { + color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [ + { + offset: 0, + color: '#eda13a' + }, + { + offset: 0.6, + color: '#dfb44e' + }, + { + offset: 1, + color: '#ccc16c' + } + ], false), + lineStyle: { + width: 1, + type: 'solid' + }, + barBorderRadius: [30, 30, 0, 0], + }, + data: dataList5.value.map(i => i.nowStockNum) + }, + { + name: '搴撳瓨鍒╃敤鐜�', + type: 'line', + smooth: false, + showAllSymbol: true, + symbol: 'none', + lineStyle: { + color: "#9eabc2" + }, + yAxisIndex: 1, + label: { + show: false, + position: 'top', + color: '#fff', + // formatter: '{c}' + '%', }, data: dataList5.value.map(i => i.stockRataNum) } @@ -1235,6 +1668,8 @@ console.log('res', res) dataList5.value = res.data || [] initEchart5() + initEchart6() + initEchart7() }) } @@ -1268,7 +1703,7 @@ initMap() // initEchart2() - initEchart3() + // initEchart3() // initEchart4() // initEchart5() setTimeout(() => { @@ -1592,17 +2027,24 @@ -webkit-text-fill-color: transparent; } + .blue { + background-image: -webkit-linear-gradient(top, + #fff 0%, + #65a1fa 30%, + #3a84f6 100%); + } + .today { background-image: -webkit-linear-gradient(top, #fff 0%, - #20FFC5 50%, + #20FFC5 30%, #20FFC5 100%); } .finish { background-image: -webkit-linear-gradient(top, #fff 0%, - #FFB120 50%, + #FFB120 30%, #FFB120 100%); } } @@ -1617,16 +2059,91 @@ } .footer { - font-weight: 500; - font-size: 16px; - display: flex; - align-items: center; + .wrap { + display: flex; + align-items: center; + height: 76px; - .num { - font-weight: bold; - font-size: 24px; - color: #01D9FE; - margin-left: 8px; + .content { + flex: 5; + height: 16px; + background: rgba(255, 255, 255, 0.13); + border-radius: 8px; + margin-right: 4px; + display: flex; + position: relative; + } + + .box { + width: 40%; + height: 16px; + background: linear-gradient(270deg, #FF9F02 0%, #FFEA70 100%); + border-radius: 8px; + position: absolute; + top: 0; + left: 0; + z-index: 99; + + .tag { + position: absolute; + bottom: -30px; + right: 0; + transform: translate(50%, 0); + height: 20px; + background: #FECE01; + color: #000000; + padding: 0 6px; + border-radius: 12px; + display: flex; + align-items: center; + + .icon { + position: absolute; + top: 1px; + left: 50%; + /* transform: translate(-50%,0); */ + width: 10px; + height: 10px; + transform: rotate(45deg) translate(-50%, 0); + background: #FECE01; + z-index: -1; + } + } + + .tag1 { + background-color: #28F0CC; + + .icon { + background-color: #28F0CC; + } + } + } + + .box1 { + width: 70%; + z-index: 9; + background: linear-gradient(270deg, #15FDC8 0%, #006BFF 100%); + } + + .scale { + position: absolute; + top: -24px; + left: 0; + font-size: 16px; + color: #D2E0FF; + } + + .scale1 { + left: 84%; + } + + .side { + flex: 2; + height: 16px; + background: rgba(255, 255, 255, 0.13); + border-radius: 8px; + position: relative; + } } } } @@ -1634,11 +2151,42 @@ .center_box_two { width: 100%; flex: 1; + position: relative; .echart_map { width: 100%; height: 100%; /* transform: scale(.2); */ + } + + .list { + position: absolute; + left: 24px; + bottom: 10px; + + .item { + display: flex; + align-items: center; + font-size: 15px; + color: #D2E0FF; + margin-top: 20px; + .icon { + width: 22px; + height: 22px; + background: rgba(255, 125, 9, 0.8); + margin-right: 12px; + } + .icon2{ + background: rgba(254,175,1,0.8); + } + .icon3{ + background: rgba(9,250,205,0.8); + } + .icon4{ + background: #225BA1; + } + + } } } } @@ -1646,126 +2194,15 @@ .right_box { width: 440px; - .right_box_one { - margin-top: 20px; - padding: 0px 10px 30px 20px; - - .content_wrap { - display: flex; - justify-content: space-between; - - .num_wrap { - width: 280px; - - .num_list { - display: flex; - margin-bottom: 20px; - - .num { - width: 30px; - height: 46px; - display: flex; - justify-content: center; - align-items: center; - position: relative; - font-weight: 600; - font-size: 32px; - margin-right: 5px; - } - } - - .content { - display: flex; - color: #D2E0FF; - - .la { - color: #869CC9; - } - - .unit_wrap { - display: flex; - align-items: center; - } - - .icon { - width: 10px; - height: 12px; - margin-right: 6px; - margin-left: 4px; - } - } - } - - .static_wrap { - flex: 1; - - .echart_wrap { - width: 54px; - height: 54px; - position: relative; - margin-bottom: 12px; - - .echart3 { - width: 54px; - height: 54px; - } - - .pie_text { - width: 38px; - height: 38px; - border: 1px dashed rgba(210, 224, 255, 0.48); - border-radius: 50%; - position: absolute; - - left: 50%; - top: 50%; - transform: translate(-50%, -50%); - z-index: 999; - display: flex; - flex-direction: column; - justify-content: center; - align-items: center; - font-size: 12px; - - .fs30 { - font-weight: 600; - font-size: 14px; - color: #28F0C4; - } - } - - } - - .text { - font-size: 13px; - color: #869CC9; - } - } - } - } - - .right_box_two { - padding: 10px 15px; - - .echart4_wrap { - width: 410px; - height: 216px; - - .echart4 { - width: 410px; - height: 216px; - } - } - } - .right_box_three { + margin-top: 20px; .echart5_wrap { - height: 240px; + height: 192px; width: 410px; .echart5 { - height: 240px; + height: 192px; width: 410px; } } @@ -2129,6 +2566,28 @@ } } + .side { + font-size: 14px; + color: #D2E0FF; + + span { + font-size: 16px; + font-weight: 600; + color: #3981ea; + background-image: -webkit-linear-gradient(top, + #fff 0%, + #65a5ff 30%, + #2c66b9 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; + + .unit { + font-weight: 400; + font-size: 12px; + } + } + } + .tabs { display: flex; align-items: center; -- Gitblit v1.9.3