This commit is contained in:
cclu 2024-04-30 18:19:35 +08:00
parent 9f2e1de9a1
commit 230c9f5273
6 changed files with 194 additions and 21 deletions

View File

@ -5,6 +5,20 @@
<view class="meng" v-if="showMonthDetail" @click.stop="handleShowTrafficDetail"></view>
<view class="meng" v-if="ydModal" @click.stop="handleShowYDModal"></view>
<!-- 刚开始的悬浮广告 -->
<view class="advertisement" v-if="showAdvertisement">
<view :class=" isShowCloseAnimal?'advertisementNormalContent advertisementContent':'advertisementNormalContent'">
<!-- <span class="text">2024年五一假期预测</span>-->
<img class="topImg" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/advertisementTitle.png" />
<div style="display: inline-block;width: 200px;height: 400px;overflow: hidden">
<image @click="handlePreview" class="adverImg" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/advertisement.jpg" />
</div>
</view>
<view class="closeBox">
<image @click="handleClose" class="closeIcon" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/closeIcon.svg"/>
</view>
</view>
<view class="showMoreFixedBox" v-if="showMoreFixed" @click="handleShowMore">
<view class="fixedBox" :style="{top: `${menu.bottom + 10}px` }">
<view class="otherDetailBottom">
@ -1602,12 +1616,14 @@ export default {
profitSharingList:[],// list
isShowFestival:'labour',//
oldSwiperIndex: 0,// swiper 1 return
showAdvertisement: false,// 广
isShowCloseAnimal: false,//
}
},
watch:{
user:{
// onLoad user
handler:function (value){
handler:async function (value){
let userInfo = uni.getStorageSync('vuex')
userInfo = JSON.parse(userInfo)
if (this.isReturn===true){
@ -1663,6 +1679,7 @@ export default {
this.getData(this.option)
this.handleNoticeMonth()
this.handleNoticeYear()
}
}
},
@ -1695,10 +1712,19 @@ export default {
...mapGetters({'user':'getUser'})
},
onLoad(option){
// if (new Date().getTime() > new Date('2024-04-04 00:00:00').getTime()){
// this.isShowFestival = 'qm'
// }
const _this = this
if (new Date().getTime() < new Date('2024-05-03 00:00:00').getTime()){
this.showAdvertisement = true
}
let _this = this
// setTimeout(()=>{
// _this.showAdvertisement = false
// },6000)
// setTimeout(()=>{
// _this.moneyRateList = [0,0]
// },3000)
@ -1813,6 +1839,7 @@ export default {
//
this.handleNoticeMonth()
this.handleNoticeYear()
// isSuccess true
setTimeout(()=>{
if (!this.isSuccess){
@ -1844,6 +1871,10 @@ export default {
if (!this.isReturn){
this.getData(this.option)
this.currentMoney = 0
if (new Date().getTime() < new Date('2024-05-03 00:00:00').getTime()){
this.showAdvertisement = true
this.isShowCloseAnimal = false
}
this.handleRealRevenue()
}
uni.stopPullDownRefresh();
@ -1851,6 +1882,21 @@ export default {
methods:{
numeral,
...mapActions(['memberLogin','getLoginCode']),
// 广
handleClose(){
this.isShowCloseAnimal = true
let _this = this
setTimeout(()=>{
_this.showAdvertisement = false
},500)
},
//
handlePreview(){
uni.previewImage({
current:'https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/advertisement.jpg',
urls:['https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/advertisement.jpg']
})
},
//
handleShowMore(){
this.showMoreFixed = !this.showMoreFixed
@ -3002,7 +3048,12 @@ export default {
uni.hideLoading()
this.isSuccess = true
this.stopSwiper = false
_this.$forceUpdate()
},
getDetail(obj) {
let _this = this
@ -3187,6 +3238,73 @@ $iphoneHeight: env(safe-area-inset-bottom);
}
}
}
@keyframes moveAndShrink {
0% {
transform: translateX(0) scale(1);
}
50% {
transform: translate(5%,150px) scale(0.5);
}
100% {
transform: translate(10%,300px) scale(0);
}
}
.advertisement{
width: 100vw;
height: 100vh;
position: fixed;
top: 0;left: 0;
background: rgba(7, 7, 7, 0.5);
z-index: 999998;
.advertisementNormalContent{
height: 500px;
position: absolute;
top: 10vh;left: 50%;
transform: translateX(-50%);
background: #fff;
border-radius: 16px;
box-sizing: border-box;
padding: 16px;
display: flex;
flex-direction: column;
align-items: center;
.topImg{
width: 200px;
height: 49px;
}
.adverImg{
width: 200px;
height: 683px;
}
.text{
font-size: 18px;
color: #7F020B;
display: inline-block;
white-space: nowrap;
}
}
.advertisementContent{
animation: moveAndShrink 0.5s;
}
.closeBox{
position: absolute;
top: calc(10vh + 510px);left: 50%;
transform: translateX(-50%);
width: 100%;
display: flex;
justify-content: center;
.closeIcon{
width: 30px;
height: 30px;
}
}
}
.header {
width: 100%;
background: linear-gradient(180deg, #DCE6FF 0%, #F3F4F9 100%);

View File

@ -1,7 +1,7 @@
<template>
<div class="main">
<div :class="selectFestival===0?'top springTop':selectFestival===1?'top qmTop':''">
<div :class="selectFestival===0?'header headerSpring':selectFestival===1?'header headerQm':''" :style="{height:menu.height + menu.top + 'px',top:0+'px'}">
<div :class="selectFestival===0?'top springTop':selectFestival===1?'top qmTop':selectFestival===2?'top labourTop':''">
<div :class="selectFestival===0?'header headerSpring':selectFestival===1?'header headerQm':selectFestival===2?'header headerlabour':''" :style="{height:menu.height + menu.top + 'px',top:0+'px'}">
<image :style="{bottom: ((statusBarHeight-24)/4)+'px' }" class="backArrow" src="https://eshangtech.com/ShopICO/ahyd-BID/examine/leftArrowWhite.svg" @click="handleBack"/>
<!-- <img :style="{bottom: ((statusBarHeight-24)/4)+'px' }" class="detailIcon" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/serverPartDetail.png">-->
<div v-if="showSpring" class="picker" @click="handleGoMap">
@ -28,11 +28,11 @@
<!-- </scroll-view>-->
</div>
<div class="contentPage">
<div :class="selectFestival===0?'contentTop springContentTop':selectFestival===1?'contentTop qmContentTop':''">
<div :class="selectFestival===0?'contentTop springContentTop':selectFestival===1?'contentTop qmContentTop':selectFestival===2?'contentTop labourContentTop':''">
<div class="content">
<div class="left">
<!-- <img class="detailLogo" src="https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/serverDetail.png"/>-->
<img class="detailLogo" :src="selectFestival===0?'https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/serverDetail.png':selectFestival===1?'https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/qmServicepartDetail.png':''"/>
<img class="detailLogo" :src="selectFestival===0?'https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/serverDetail.png':selectFestival===1?'https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/qmServicepartDetail.png':selectFestival===2?'https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/labourServerPartDetail.png':''"/>
<!-- <text class="modalUnit">{{selectDateText || ''}}</text>-->
<!-- <text class="modalUnit">{{`/统计到${allDateDay || ''}`}}</text>-->
</div>
@ -49,7 +49,7 @@
<!-- <div class="allBox">-->
<!-- <div :class="currentScroll==='all'?'scrollItem selectItem':'scrollItem'" @click="handleChangeTime('all')">累计</div>-->
<!-- </div>-->
<scroll-view scroll-x="true" :class="selectFestival===0?'navList springNav':selectFestival===1?'navList qmNav':''" :scrollIntoView="currentScroll" :scroll-with-animation="true">
<scroll-view scroll-x="true" :class="selectFestival===0?'navList springNav':selectFestival===1?'navList qmNav':selectFestival===2?'navList labourNav':''" :scrollIntoView="currentScroll" :scroll-with-animation="true">
<div :class="currentScroll==='item'+item.value?'scrollItem selectItem':'scrollItem'" v-for="(item,index) in scrollList" :key="index" :id="'item'+item.value" @click="handleChangeTime(item.value)">{{item.label}}</div>
</scroll-view>
</div>
@ -199,6 +199,8 @@ export default {
}
}else if(this.selectFestival===1){
this.currentScroll = 'item'+ this.lastDay
}else if (this.selectFestival===2){
this.currentScroll = 'item'+ this.lastDay
}
@ -228,6 +230,15 @@ export default {
this.howDayNumber = 5
this.currentScroll = 'item'+ '2024-04-07'
}
}else if (this.selectFestival===2){
dayNumber = moment().diff("2024-04-30", "days")//
if (dayNumber<=7){
this.howDayNumber = dayNumber
}else{
this.howDayNumber = 7
this.currentScroll = 'item'+ '2024-05-05'
this.lastDay = '2024-05-05'
}
}
let dateList = []
for (let i = 1;i<=this.howDayNumber;i++){
@ -235,6 +246,8 @@ export default {
dateList.push({label:`${i}`,value:moment("2024-01-25").add(i, 'days').format("YYYY-MM-DD")})
}else if(this.selectFestival===1){
dateList.push({label:`${i}`,value:moment("2024-04-02").add(i, 'days').format("YYYY-MM-DD")})
}else if (this.selectFestival===2){
dateList.push({label:`${i}`,value:moment("2024-04-28").add(i, 'days').format("YYYY-MM-DD")})
}
// if (i<7){
// dateList.push({label:`${i}`,value:`2024-01-${26+i-1}`})
@ -283,8 +296,8 @@ export default {
pushProvinceCode: this.useInfo.userData.ProvinceCode || '340000',
curYear: this.curYear,
compareYear: this.compareYear,
HolidayType:this.selectFestival===0?2:this.selectFestival===1?3:'',
StatisticsDate:time,
HolidayType:this.selectFestival===0?2:this.selectFestival===1?3:this.selectFestival===2?4:'',
StatisticsDate: time,
ServerpartId: this.springService.Serverpart_ID || this.ServerpartId,
SortStr:`${this.type===1?'revenue':this.type===2?'account':this.type===3?'bayonet':''} ${this.sortType===0?'asc':'desc'}`,
}
@ -504,6 +517,9 @@ export default {
.qmTop{
background-image: url("https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/qmBackground.png");
}
.labourTop{
background-image: url("https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/labourBg.png");
}
.top{
width: 100%;
height: 324rpx;
@ -519,6 +535,9 @@ export default {
.headerQm{
background-image: url("https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/qmBackground.png");
}
.headerlabour{
background-image: url("https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/labourBg.png");
}
.header{
position: fixed;
width: 100%;
@ -671,6 +690,9 @@ export default {
.qmContentTop{
background: linear-gradient(360deg, rgba(204,231,224,0) 0%, #CCE7E0 100%);
}
.labourContentTop{
background: linear-gradient( 360deg, rgba(255,236,208,0) 0%, #FFECD0 100%);
}
.contentTop{
width: 100%;
@ -791,6 +813,11 @@ export default {
color: #226C61!important;
}
}
.labourNav{
.selectItem{
color: #D14702;
}
}
}
.sortBox{

View File

@ -282,7 +282,7 @@ export default {
this.currentScroll = 'item'+ '2024-04-07'
}
}else if(this.selectFestival===2){
dayNumber = moment().diff("2024-04-29", "days")
dayNumber = moment().diff("2024-04-30", "days")
if (dayNumber<=7){
this.howDayNumber = dayNumber
}else{

View File

@ -498,7 +498,7 @@
<img class="goTest" @click="handleGoTest" :src="selectFestival===0?'https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/springTravelBtn.png':selectFestival===1?'https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/qmPic.png':selectFestival===2?'https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/labourCarTraffic.png':''"/>
</div>
<div class="revenueContent">
<scroll-view scroll-x="true" :class="selectFestival===0?'navList springNav':selectFestival===1?'navList qmNav':selectFestival===2?'navList qmNav':selectFestival===2?'navList labourNav':''" :scrollIntoView="currentScroll" :scroll-with-animation="true">
<scroll-view scroll-x="true" :class="selectFestival===0?'navList springNav':selectFestival===1?'navList qmNav':selectFestival===2?'navList labourNav':''" :scrollIntoView="currentScroll" :scroll-with-animation="true">
<div :class="currentScroll==='item'+item.value?'scrollItem selectItem':'scrollItem'" v-for="(item,index) in scrollList" :key="index" :id="'item'+item.value" @click="handleChangeTime(item.value)">{{item.label}}</div>
</scroll-view>
<!-- <span class="dateText">{{selectDateText || ''}}</span>-->
@ -1032,7 +1032,7 @@ export default {
}else if (this.selectFestival===1){
dayNumber = moment().diff("2024-04-03", "days")//
}else if (this.selectFestival===2){
dayNumber = moment().diff("2024-04-29", "days")//
dayNumber = moment().diff("2024-04-30", "days")//
}
console.log('dayNumber',dayNumber)
if (this.selectFestival===0){
@ -1117,11 +1117,15 @@ export default {
console.log('e',e)
this.selectFestival = Number(e.detail.value)
this.scrollList = []
this.lastDay = uni.getStorageSync('lastDay')
if (this.selectFestival===0){
this.currentScroll = 'item'+ '2024-03-05'
}else if(this.selectFestival===1){
this.currentScroll = 'item'+ this.lastDay
}else if(this.selectFestival===2){
this.currentScroll = 'item'+ this.lastDay
}
let dayNumber = 0
@ -1130,8 +1134,9 @@ export default {
}else if (this.selectFestival===1){
dayNumber = moment().diff("2024-04-03", "days")
}else if (this.selectFestival===2){
dayNumber = moment().diff("2024-04-29", "days")//
dayNumber = moment().diff("2024-04-30", "days")//
}
console.log('dayNumber',dayNumber)
if (this.selectFestival===0){
if (dayNumber<=40){
this.howDayNumber = dayNumber
@ -1164,10 +1169,11 @@ export default {
dateList.push({label:`${i}`,value:moment("2024-01-25").add(i, 'days').format("YYYY-MM-DD")})
}else if (this.selectFestival===1){
dateList.push({label:`${i}`,value:moment("2024-04-02").add(i, 'days').format("YYYY-MM-DD")})
}else if (this.selectFestival===1){
}else if (this.selectFestival===2){
dateList.push({label:`${i}`,value:moment("2024-04-28").add(i, 'days').format("YYYY-MM-DD")})
}
}
console.log('dateList',dateList)
if (dateList && dateList.length>0){
this.scrollList = dateList
this.selectDateText = dateList[this.howDayNumber-1].value

View File

@ -35,6 +35,21 @@
</div>
</div>
</div>
<div class="noticeBox" style="height: 500rpx" v-if="selectFestival===2">
<div :class="selectFestival===0?'boxBg springBox':selectFestival===1?'boxBg qmBox':selectFestival===2?'boxBg labourBox':''"></div>
<div class="contentBox">
<img class="contentIcon" :src="selectFestival===0?'https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/imgDesc.png':selectFestival===1?'https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/trendChart.png':selectFestival===2?'https://eshangtech.com/ShopICO/ahyd-BID/newIndex3/larburTrendChart.png':''"/>
<div class="contentText" >
根据历史大数据显示<br/>
<div style="text-indent: 2rem;font-size: 24rpx">
2024年五一假期期间预计安徽驿达服务区<span class="red">5月1日</span>假期首日10-14时是<span class="red">出程入区高峰</span>时段<span class="red">峰值</span>出现在11时-13
</div>
<div style="text-indent: 2rem;font-size: 24rpx;margin-top: 8px">
安徽驿达服务区返程入区高峰或将较为分散预计<span class="red">5月4日</span>假日第四天15-19<span class="red">5月5日</span>假期末日14-20时为<span class="red">返程入区高峰</span>时段预计<span class="red">入区峰值</span>出现在<span class="red">5月4日</span>假日第四天<span class="red">17-19</span><span class="red">5月5日</span>假期末日<span class="red">16-18</span>5月6日恢复正常
</div>
</div>
</div>
</div>
<div class="allPkBox">
<div :class="selectFestival===0?'boxBg springBox':selectFestival===1?'boxBg qmBox':selectFestival===2?'boxBg labourBox':''"></div>
@ -242,7 +257,7 @@ export default {
dateList.push(`${i}`)
}
for(let i = 1;i<=7;i++){
dateList2.push(i)
dateList2.push(`${i}`)
}
}
@ -259,7 +274,10 @@ export default {
dateList.forEach((item,index)=>{
// let beforeValue = dataObj.compareList.filter(filter=> filter.easyDate === item)[0]
// beforeValue = beforeValue?beforeValue.value:null
let beforeValue = dataObj.compareList[index].value
let beforeValue
if (dataObj.compareList && dataObj.compareList.length>0 && dataObj.compareList[index]){
beforeValue = dataObj.compareList[index].value
}
if (beforeValue){
if (Number(beforeValue) / 10000 > max){
max = Number(beforeValue) / 10000
@ -274,7 +292,10 @@ export default {
// let compareValue = dataObj.curList.filter(filter=> filter.easyDate === item)[0]
// compareValue = compareValue?compareValue.value:null
let compareValue = dataObj.curList[index].value
let compareValue
if (dataObj.curList && dataObj.curList.length>0 && dataObj.curList[index]){
compareValue = dataObj.curList[index].value
}
if (compareValue){
if (Number(compareValue) / 10000 > max){
max = Number(compareValue) / 10000
@ -344,6 +365,7 @@ export default {
max:Number(max.toFixed(2)),
}
console.log('res',res)
console.log('res2',res2)
this.res = res
this.res2 = res2
this.opts = {

Binary file not shown.

After

Width:  |  Height:  |  Size: 91 KiB