From 537671dd0a367dfa9ef3f0dd3d33db2d4838ceed Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期二, 24 十二月 2024 16:25:17 +0800
Subject: [PATCH] 最新版本541200007
---
screen/src/views/LogisticsCenter.vue | 223 ++++++++++++++++++++++++++-----------------------------
1 files changed, 105 insertions(+), 118 deletions(-)
diff --git a/screen/src/views/LogisticsCenter.vue b/screen/src/views/LogisticsCenter.vue
index 4635785..ff138cd 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>
@@ -172,7 +172,7 @@
</div>
<div class="footer">
<div class="wrap">
- <div class="content">
+ <div class="content" :style='{ width: cneterData.level1}'>
<div class="scale">0</div>
<!-- <div class="node">
<div>8h</div>
@@ -181,24 +181,36 @@
<div class="icon icon2"></div>
</div>
</div> -->
- <div class="box">
- <div class="tag">
+ <div :style="{width: cneterData.level3}" :class="{box23: cneterData.crrentOutNum >= cneterData.hoursAbility}" class="box" >
+ <div v-if="cneterData.crrentOutNum < cneterData.hoursAbility" class="tag">
<div class="icon"></div>
<span>浠婃棩鍑哄簱</span>
</div>
</div>
- <div class="box box1">
- <div class="tag tag1">
+ <div :style="{width: cneterData.level2}" class="box box1">
+ <div v-if="cneterData.hoursAbility >= cneterData.currentPlanNum" class="tag tag1">
<div class="icon"></div>
<span>褰撴棩璁″垝</span>
</div>
</div>
</div>
- <!-- <div class="side">
- <div class="box"></div>
+ <div class="side">
+ <div v-if="cneterData.crrentOutNum >= cneterData.hoursAbility" :style="{width: cneterData.level33}" class="box box22" >
+ <div class="tag">
+ <div class="icon"></div>
+ <span>浠婃棩鍑哄簱</span>
+ </div>
+ </div>
+ <div v-if="cneterData.hoursAbility <= cneterData.currentPlanNum" :style="{width: cneterData.level22}" class="box box1 box11">
+ <div class="tag tag1">
+ <div class="icon"></div>
+ <span>褰撴棩璁″垝</span>
+ </div>
+ </div>
+ <!-- <div class="box"></div> -->
<div class="scale" style="left: -12px;">8h</div>
<div class="scale scale1">鏈�澶�</div>
- </div> -->
+ </div>
</div>
</div>
</div>
@@ -334,7 +346,7 @@
</div>
<div id="map-container" ref="mapContainer"></div>
<div class="fu_list">
- <div class="fu_item" v-for="item, i in modalInfo.cicleStatusList">
+ <div class="fu_item" v-for="item, k in modalInfo.cicleStatusList">
<div class="item_title">
<div class="icon">
<img v-if="item.key == 0 && k != 0" src="@/assets/images/LogisticsCenter/ic_dingdan@2x.png"
@@ -379,8 +391,9 @@
</div>
</div>
</div>
- <div class="modal_mask" v-if="showModal" @click="showModal = false"></div>
+ <div class="modal_mask" v-if="showModal" @click="closeModal"></div>
</div>
+ <!-- <Loading v-if="isLoading" /> -->
</v-scale-screen>
</template>
@@ -396,6 +409,9 @@
import chinaJSON from '@/assets/china.json'
import fahuoImg from '@/assets/images/LogisticsCenter/ic_fahuodi@2x.png'
import shouImg from '@/assets/images/LogisticsCenter/ic_huowu@2x.png'
+// import { Loading } from 'vue3-loading-spinner';
+// import 'vue3-loading-spinner/dist/style.css';
+
import {
getStoreOperationList,
getStorearriveGoodsList,
@@ -424,67 +440,7 @@
time.value = dayjs().format('HH:mm:ss')
}, 1000)
-
-const initEchart2 = () => {
- const myChart = echarts.init(document.getElementById('echart1'))
- const option = {
- series: [
- {
- type: 'pie',
- radius: ['86%', '100%'],
- label: {
- show: false,
- position: 'center'
- },
- padAngle: 5,
- itemStyle: {
- borderRadius: 10
- },
- color: colors,
- labelLine: {
- show: false
- },
- data: [
- { value: 1048, name: 'Search Engine' },
- { value: 735, name: 'Direct' },
- { value: 580, name: 'Email' }
- ]
- }
- ]
- }
- myChart.setOption(option)
- window.addEventListener('resize', function () { // 鎵ц
- myChart.resize()
- })
-}
-const initEchart3 = () => {
- const myChart = echarts.init(document.getElementById('echart3'))
- const option = {
- tooltip: {
- trigger: 'item'
- },
- series: [
- {
- type: 'pie',
- radius: ['80%', '96%'],
- label: {
- show: false,
- position: 'center'
- },
- color: ['#72ecc5', '#19373a'],
- labelLine: {
- show: false
- },
- data: [3, 7]
- }
- ]
- }
- myChart.setOption(option)
- window.addEventListener('resize', function () { // 鎵ц
- myChart.resize()
- })
-}
-
+const isLoading = ref(false);
//
const mapList = ref([])
const mapEchart = ref()
@@ -536,6 +492,7 @@
{ name: '鍙版咕鐪�', value: 0 },
{ name: '棣欐腐鐗瑰埆琛屾斂鍖�', value: 0 },
{ name: '婢抽棬鐗瑰埆琛屾斂鍖�', value: 0 },
+ { name: '鍗楁捣璇稿矝', value: 0 },
]
mapData.forEach(item => {
item.monthNum = 0
@@ -557,7 +514,7 @@
{ min: 100000, max: 99999999999, label: '鍑哄簱閲�10w浠ヤ笂', color: '#be6f2b' },
{ min: 50000, max: 100000, label: '鍑哄簱閲�5-10w', color: '#c39332' },
{ min: 20000, max: 50000, label: '鍑哄簱閲�2-5w', color: '#5ecbaf' },
- { min: -1, max: 20000, label: '鍑哄簱閲�2w浠ヤ笅', color: '#325a9b' },
+ { min: -1, max: 20000, label: '鍑哄簱閲�2w浠ヤ笅', color: '#3561a4' },
],
itemWidth: 22,
itemHeight: 22,
@@ -595,8 +552,8 @@
center: [105.194115019531, 36.582111640625], // 鍦板浘涓績浣嶇疆锛� 姝ゅ鐨勭含搴︿笌涓嬮潰鐨刢enter鐩稿樊1搴︽槸褰㈡垚闃村奖鐨勮窛绂伙紝鍙嚜宸遍殢鎰忚皟鏁�
itemStyle: {
areaColor: '#152e4a', //鍦板浘闃村奖鐨勯鑹�
- borderColor: '#f7f7f7', // 鐪佷唤杈规棰滆壊
- borderWidth: 0.1, // 鐪佷唤杈规瀹藉害
+ borderColor: '#779dc8', // 鐪佷唤杈规棰滆壊
+ borderWidth: 0.5, // 鐪佷唤杈规瀹藉害
// shadowBlur: 5, // 鐪佷唤杈规鑱氱劍
},
emphasis: {
@@ -902,18 +859,22 @@
page: 0,
rows: 10
})
-const modalTabClick = (val) => {
- modalTab.value = val
-}
const taskClick = (item) => {
+ isLoading.value = true
kzorderInfo({ contractNumber: item.contractNumber }).then(res => {
modalInfo.value = res.data
showModal.value = true
- console.log('modalInfo.value', modalInfo.value)
+ isLoading.value = false
nextTick(() => {
initGdMap()
})
+ }, () => {
+ isLoading.value = false
})
+}
+const closeModal = () => {
+ showModal.value = false
+ modalInfo.value = {}
}
@@ -1083,9 +1044,46 @@
activeTab1.value = val
getStockOut()
}
+// footer
const getData3 = () => {
- getStorecenterData().then(res => {
- cneterData.value = res.data || {}
+ getStorecenterData({
+ factoryCode: activeCity.value.code
+ }).then(res => {
+ const obj = res.data || {}
+ console.log('obj', obj);
+
+ // 8灏忔椂 璁″垝 浠婃棩
+ // obj.hoursAbility = 6000
+ // obj.maxAbility = 8000
+ // obj.currentPlanNum = 5000
+ // obj.crrentOutNum = 7000
+
+ obj.level1 = ((obj.hoursAbility / obj.maxAbility) * 100).toFixed(2) + '%'
+ if(obj.currentPlanNum >= obj.hoursAbility){
+ obj.level2 = '100%'
+ obj.level22 = (((obj.currentPlanNum - obj.hoursAbility) / (obj.maxAbility - obj.hoursAbility)) * 100).toFixed(2)
+ obj.level22 = obj.level22 > 100 ? '100%' : obj.level22 + '%'
+ }else{
+ obj.level2 = ((obj.currentPlanNum / obj.hoursAbility)* 100).toFixed(2) + '%'
+ obj.level22 = 0
+ }
+ if(obj.crrentOutNum >= obj.hoursAbility){
+ obj.level3 = '100%'
+ obj.level33 = (((obj.crrentOutNum - obj.hoursAbility) / (obj.maxAbility - obj.hoursAbility)) * 100).toFixed(2)
+ obj.level33 = obj.level33 > 100 ? '100%' : obj.level33 + '%'
+ }else{
+ obj.level3 = ((obj.crrentOutNum / obj.hoursAbility)* 100).toFixed(2) + '%'
+ obj.level33 = 0
+ }
+
+ console.log('obj1', obj.level1);
+ console.log('obj2', obj.level2);
+ console.log('obj22', obj.level22);
+ console.log('obj3', obj.level3);
+ console.log('obj33', obj.level33);
+
+ cneterData.value = obj
+
})
}
@@ -1669,6 +1667,11 @@
getCity()
changeCity()
getData5()
+ setInterval(() => {
+ getCity()
+ changeCity()
+ getData5()
+ }, 1000 * 60 * 10)
setTimeout(() => {
loopFn1()
}, 12000)
@@ -2041,47 +2044,18 @@
height: 76px;
.content {
- flex: 5;
+ width: 80%;
height: 16px;
background: rgba(255, 255, 255, 0.13);
border-radius: 8px;
- margin-right: 4px;
+ margin-right: 6px;
display: flex;
position: relative;
- .node {
- position: absolute;
- left: 69%;
- top: -20px;
- width: 22px;
- height: 70px;
- z-index: 999;
- overflow: hidden;
-
- .node_icon {
- background-color: #051623;
- height: 16px;
-
- .icon {
- background-color: #25333f;
- height: 16px;
- width: 16px;
- position: absolute;
- top: 20px;
- right: -8px;
- border-radius: 50%;
- overflow: hidden;
- }
-
- .icon2 {
- right: 12px;
- }
- }
- }
}
.box {
- width: 40%;
+ width: 80%;
height: 16px;
background: linear-gradient(270deg, #FF9F02 0%, #FFEA70 100%);
border-radius: 8px;
@@ -2102,7 +2076,9 @@
border-radius: 12px;
display: flex;
align-items: center;
-
+ justify-content: center;
+ min-width: 76px;
+ border: 1px solid #fff;
.icon {
position: absolute;
top: 1px;
@@ -2126,9 +2102,18 @@
}
.box1 {
- width: 70%;
+ width: 10%;
z-index: 9;
- background: linear-gradient(270deg, #15FDC8 0%, #006BFF 100%);
+ background: linear-gradient(270deg, #68dfd3 0%, #006BFF 100%);
+ }
+ .box11{
+ background: linear-gradient(270deg,#75f8cc 0%, #68dfd3 100%);
+ }
+ .box22{
+ background: linear-gradient(270deg, #f2a43b 0%, #ecbb61 100%);
+ }
+ .box23{
+ background: linear-gradient(270deg, #f4b34a 0%, #FFEA70 100%);
}
.scale {
@@ -2141,10 +2126,11 @@
.scale1 {
left: 84%;
+ min-width: 36px;
}
.side {
- flex: 2;
+ flex: 1;
height: 16px;
background: rgba(255, 255, 255, 0.13);
border-radius: 8px;
@@ -2349,7 +2335,8 @@
top: 220px;
right: 10px;
z-index: 999999;
- :deep(.amap-markers){
+
+ :deep(.amap-markers) {
left: -12px !important;
top: -32px !important;
}
--
Gitblit v1.9.3